C ++可变参数构造函数-传递给父构造函数

问题描述

| 我有以下代码
class A{

    //Constructor
    public: A(int count,...){
        va_list vl;
        va_start(vl,count);
        for(int i=0;i<count;i++)
            /*Do Something ... */
        va_end(vl);
    }
};

class B : public A{

    //Constructor should pass on args to parent
    public: B(int count,...) : A(int count,????)
    {}
};
我怎样才能做到这一点? 注意:我希望在初始化列表中而不是在构造函数主体中调用构造函数。但是,如果这是唯一的方法,我也很想听听它是如何工作的! 谢谢     

解决方法

        您无法前进到省略号。我认为第二个构造函数必须取
va_list
。 使用C ++ 0x \的基本构造函数转发或可变参数模板,这将是可能的。