2014-06-20 3 views
0

, 나는 그러나, 내가하려고 콘크리트 형 T. decltype (*이) 모르는 생성자 메서드를이 클래스 유형을 얻는 방법? 예를 들어

#define DEFAULT_CONSTRUCTOR T() { ...; } 

class A 
{ 
    DEFAULT_CONSTRUCTOR; 
}; 

를 작성하는 매크로를 사용합니다. 생성자에서는 사용할 수 없습니다. 그것을하는 어떤 방법? 매크로 인수를 사용하지 마십시오.

+0

당신은 생성자의 형태 이름을 가지고있다. 어쨌든 당신은 무엇을하려고합니까? – Praetorian

+1

비슷하지만 생성자는 정확한 이름을 필요로합니다. http://stackoverflow.com/questions/21143835/can-i-implement-an-autonomous-self-member-type-in-c – chris

+0

생성자를 구현하는 매크로를 작성합니다. 할당, 복제 및 매크로 "DEFAULTS_ALL (members ...)"또는 "DEFAULTS_ALL (T, members ...)"에 함께 넣습니다. 단지 첫 번째 버전을 사용하고 싶습니다. – user1899020

답변

0

매크로에 인수를 지정해야합니다. 이 같은

:

#define DEFAULT_CONSTRUCTOR(CLS_NAME) CLS_NAME() { ...; } 

이제 클래스 : (어떻게 당신은 개인의 ctor되고 싶어?)

class A 
{ 
    DEFAULT_CONSTRUCTOR(A); 
};