举个拷贝构造函数的实例
时间: 2024-06-16 21:06:31 浏览: 83
复制构造函数的用法实例
拷贝构造函数是一种特殊的构造函数,用于创建一个新对象,该对象与已有对象具有相同的数据成员值。下面是一个拷贝构造函数的实例:
```cpp
#include <iostream>
class MyClass {
private:
int data;
public:
// 默认构造函数
MyClass() {
data = 0;
}
// 拷贝构造函数
MyClass(const MyClass& other) {
data = other.data;
}
// 设置数据成员的值
void setData(int value) {
data = value;
}
// 获取数据成员的值
int getData() {
return data;
}
};
int main() {
// 创建一个对象并设置数据成员的值
MyClass obj1;
obj1.setData(10);
// 使用拷贝构造函数创建一个新对象,并将其值设置为obj1的值
MyClass obj2(obj1);
// 输出obj2的值
std::cout << "obj2的值为:" << obj2.getData() << std::endl;
return 0;
}
```
在上面的例子中,我们定义了一个名为`MyClass`的类,它包含一个私有数据成员`data`。我们实现了一个拷贝构造函数`MyClass(const MyClass& other)`,它接受一个同类型的对象作为参数,并将其数据成员的值复制给新创建的对象。
在`main`函数中,我们首先创建了一个对象`obj1`并设置其数据成员的值为10。然后,我们使用拷贝构造函数创建了一个新对象`obj2`,并将其值设置为`obj1`的值。最后,我们输出了`obj2`的值,结果为10。
阅读全文