读书人

在构造函数中给数组赋初值解决办法

发布时间: 2012-02-10 21:27:42 作者: rapoo

在构造函数中给数组赋初值
大家好,在一个类中,我定义了如下的构造函数:
class a
{
int name;
int number;
public:
B(){name=1;number=2;}
B(int i,int j){name=i;number=j;}
....
};
然后main()中定义了
B a[5];\\每个对象的name,number都被分别列为1和2
B c[2](3,4);\\很明显,这是错的。

我想问的像第二种情况,有什么方法可以按重载的构造函数赋值吗?谢谢!

[解决办法]
勉强可以
B c[2] = {B(3,4), B()};
如果是new出来的,就没办法了。
[解决办法]
可能产生,也可能不产生。
反正,按传统做法,你不也得
B c[2];
c[0] = B(3, 4);
c[1] = B();
嘛。

读书人网 >C++

热点推荐