C++에서 가변 인수 목록을 기본 생성자에 전달할 수 있습니까?가변 인수 목록을 C++의 기본 생성자에 전달
기본 생성자의 코드를 파생 클래스에 복사 할 수 있습니다. 거기에 가변 인수 목록을 처리하지만 원치 않는 코드가 중복 될 수 있습니다.
class A{
public:
A(const char * fmt,...){
va_list ap;
va_start(ap, fmt);
vprintf(fmt,ap);
va_end(ap);
};
};
class B: public A{
public:
B(const char * fmt,...):A(fmt){;};
};
int main(){
B("%d\n",42);
}
하지만 생성자는 기본 클래스 생성자에 변수 인수를 전달하지 않습니다
이것은 내가 지금까지 시도 것입니다.
관련 구식 va_stuff? – WhozCraig
C-ellipsis의 경우,'printf' has가 대응하는'vprintf'이므로'va_list'를 전달할 변형이 있습니다. C++의 경우 variadic 템플릿 만 사용하십시오. – Jarod42