定义类的构造函数时 类的成员变量有由另一个类定义的变量时的
时间: 2023-07-10 19:22:04 浏览: 123
浅析C#静态类,静态构造函数,静态变量
这种情况下,可以在构造函数中使用成员初始化列表来初始化类的成员变量。成员初始化列表是构造函数的一部分,位于构造函数的参数列表之后,构造函数体之前。语法是在参数列表之后使用冒号来分隔成员初始化列表和函数体,然后列出每个成员变量和相应的初始化值。
例如,假设有一个类B,其中包含一个成员变量a,它是类A的一个对象。则可以在B的构造函数中使用成员初始化列表来初始化a,如下所示:
```
class B {
public:
B(int x, int y) : a(x, y) { // 成员初始化列表
// 构造函数体
}
private:
A a; // 类A的一个对象
};
class A {
public:
A(int x, int y) : p(x), q(y) { // 成员初始化列表
// 构造函数体
}
private:
int p, q;
};
```
在上面的例子中,B的构造函数具有两个参数x和y,它使用成员初始化列表来初始化a,将x和y传递给A的构造函数。同样地,A的构造函数也使用成员初始化列表来初始化p和q。
阅读全文