我是一个自学成才的初学者,所以我想我会问一个很基本的问题,但是,我忽略了。
假设您有一个aClass
用C ++命名的类,并且其中一个构造函数需要一个参数。这两种方法有什么区别?
第一:
aClass::aClass(int aVariable) : privateVariable(aVariable) {}
第二名:
aClass::aClass(int aVariable) {
privateVariable = aVariable;
}
如果它们基本上是同一件事,那么两者中哪一个更常见?或者,出于什么原因人们倾向于代替其他原因使用?
谢谢!
第一个进行初始化,应该首选。
第二个分配(默认初始化后)。它主要等效于:
aClass::aClass(int aVariable) : privateVariable() {
privateVariable = aVariable;
}
如果privateVariable
无法默认构造,则无法使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句