
C++中复制构造函数的调用时机
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
本文探讨了在C++编程语言中,复制构造函数被自动调用的各种情形,帮助读者深入理解其工作原理和应用场景。
在C++语言里,当构造函数仅有一个参数,并且该参数为本类类型的引用(通常使用const修饰),这样的构造函数被称为复制构造函数。
复制构造函数既可以由程序员定义也可以像默认构造函数那样被编译器隐式调用。然而,在大多数情况下,特别是当类中包含指针成员时,为了实现深拷贝而不是浅拷贝,需要自己定义复制构造函数。
那么我们自定义的复制构造函数会在什么时候被调用呢?总结起来有以下五种情况:
一、根据一个同类型对象显示或隐式初始化另一个对象。
例如:
```cpp
string str1 = 123456; // 显示初始化
string str2(str1); // 隐式初始化
```
这两种方式都会调用复制构造函数。
全部评论 (0)
还没有任何评论哟~


