这个问题在这里已有答案:
class cl { public: cl(int i) { val=i; } int val; int double_val() { return val+val; } };
变量val在构造函数之后声明,它将赋值。但是这段代码仍然有用。 'val'不在构造函数的范围之外吗?
该成员可以使用该类的完整定义。所以val实际上是在构造函数的实现之前声明的。
val