刚刚在要用到这个功能时发现不行,要在构造函数中动态创建数组,并初始化。比如下面的代码,我想用参数初始化表来初始化是不行的:
class OOO
{
public:
OOO(char *name)
{
printf("%s\n", name);
}
};
class BBB
{
OOO o[3];
public:
BBB() : o(("o0"), ("o1"), ("o2"))
{
printf("in BBB\n");
}
};
可以改成
class BBB
{
OOO *o[3];
public:
BBB()
{
o[0] = new OOO("o0");
o[1] = new OOO("o1");
o[2] = new OOO("o2");
printf("in BBB\n");
}
};