2

我有一堂课

class effeid
{
public: 
 effeid(int a=0,int b=0,int c=0,int d=0):first(a),second(b),third(c),fourh(d){};

 int first;
 int second;
 int third;
 int fourh;
 };

然后是第二节课

class AxeEffect {
public:

//and I want to initialize the constructor in that way:

AxeEffect(int=0,string="",int=0,int=0,int=0,int=0,vector<effeid>??? );

如何将带有向量的部分初始化为0?

4

1 回答 1

0

要为 a 创建默认参数,vector<T>您只需构造一个,就像其他任何东西一样。

class foo
{
public:
    foo(const vector<int> &v = vector<int>()) : _v(v) {}
private:
    vector<int> _v;
};

另外,我不会vector按价值计算。参考以避免不必要的复制。

于 2013-05-02T20:43:29.183 回答