c++如何实现用两个类的对象定义另一个类的对象,请给出完整代码
时间: 2024-03-10 14:47:08 浏览: 57
下面是一个使用两个类的对象定义另一个类的对象的示例代码:
```c++
#include <iostream>
// 定义第一个类 A
class A {
public:
A(int n) : num(n) {}
void print() {
std::cout << "num = " << num << std::endl;
}
private:
int num;
};
// 定义第二个类 B
class B {
public:
B(int n) : num(n) {}
void print() {
std::cout << "num = " << num << std::endl;
}
private:
int num;
};
// 定义第三个类 C,使用 A 和 B 的对象定义
class C {
public:
C(A a, B b) : objA(a), objB(b) {}
void print() {
std::cout << "C: ";
objA.print();
objB.print();
}
private:
A objA;
B objB;
};
int main() {
A a(10);
B b(20);
C c(a, b);
c.print();
return 0;
}
```
上述代码中,类 A 和类 B 分别有一个成员变量 num,分别定义了 print() 方法用于打印 num 的值。类 C 使用了类 A 和类 B 的对象 objA 和 objB 定义,构造函数中将 objA 和 objB 分别初始化为 a 和 b,print() 方法中打印了 objA 和 objB 的值。
在 main() 函数中,分别定义了 a、b 和 c 三个对象,使用 a 和 b 初始化了 c,最后调用了 c 的 print() 方法。运行程序,输出结果如下:
```
C: num = 10
num = 20
```
可以看到,类 C 的对象 c 成功使用了类 A 和类 B 的对象定义,并正确地输出了 objA 和 objB 的值。
阅读全文