|
|
1
3
应该实现的构造函数
|
|
|
2
1
如果要在任何类型的数组或容器中使用该类的对象,我认为需要在定义任何其他构造函数的任何类中放置默认构造函数。但是,默认构造函数的实现可以只是一个空的/无操作方法。 您不需要放入成员初始化列表(尽管在某些情况下使用成员初始化列表更有效,因为这样您的成员变量只初始化一次,而不是通过其默认构造函数初始化一次,然后通过init()方法写入第二次)。 |
|
|
3
1
我想你想要这个
我这么说是因为我认为它试图根据组合规则运行默认的构造函数,而反过来需要为ce1和ce2获得一个化学元素…但我可能错了。 很肯定,krill的方法是为一个特定的构造函数指定一个变量的构造函数,但是我说了f,并做了这个,所以ce1不需要由编译器构造:) |
|
|
4
1
在这个特定的例子中,我将继续重复(它只是写两个初始值设定项,没有什么可困扰的)。 但是假设实际情况更复杂:使用OO工具避免代码重复。
或
其中elementPair包含两个化学元素和一个构造函数(带有公共代码),组合规则构造函数使用elementPair的构造函数初始化。 还有其他方法:用一些invalidChemicaleleElement实例初始化成员,或者使用invalidChemicaleElement的空指针(auto-ptr)。 |