[英]Initializing member variables in member functions
所以我现在正在实现一个c ++程序,但事实是我不知道下面的上下文是否可行。
class Foo{
private:
int a;
public:
Foo(int _a) : a(_a){
}
void func(int _a) : a(_a){
//implementation shows here
}
};
如您在这里看到的,有一些成员函数以类似于构造函数的方式初始化成员变量。 可能吗?
不,这不可能而且意义不大:成员初始化仅在construction上执行。
在func
,您将成员变量设置为其他变量, 赋值可以很好地完成此工作。
不能。初始化列表只能与构造函数一起使用。
func
必须看起来像这样。
void func(int _a) {
a = _a;
//implementation shows here
}
显然func
不能初始化引用,并且在func
可以运行之前将调用Foo
构造func
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.