怎么用复制构造函数?
时间: 2024-06-28 11:01:02 浏览: 85
C++复制控制之复制构造函数
复制构造函数是一个特殊类型的构造函数,用于创建一个新的对象,其内容是另一个已存在的对象的完整副本。它通常用来初始化新对象,并且当传递一个已有对象作为参数给构造函数时非常有用。
使用复制构造函数的基本步骤如下:
1. 定义复制构造函数:在C++中,复制构造函数的签名通常是`ClassName(const ClassName&)`,其中`ClassName`是你类的名称。
```cpp
class MyClass {
public:
// 原始的构造函数
MyClass() {} // 如果没有其他构造函数
// 复制构造函数
MyClass(const MyClass& other) {
data = other.data; // 将其他对象的数据成员复制到新对象中
// 可能还需要复制其他成员变量和处理复杂情况
}
private:
// 类的私有数据成员
int data;
};
```
2. 在实例化新对象时调用:当你想要创建一个类的新对象,并希望其内容与现有对象相同,只需使用复制构造函数即可。
```cpp
MyClass originalObj;
// 对originalObj进行初始化...
MyClass copiedObj(originalObj); // 这里就是使用复制构造函数
```
阅读全文