转换构造函数
- 实现类型的自动转换
- 只有一个参数,而且不是拷贝构造函数的构造函数,一般就可以看作是这玩意
- 编译器也是会自动生成的
class A {public:Complex(int i) {}};main() {Complex A a= 2;a = 9;// 9被自动转换成一个临时A对象}
析构函数
- 处理对象消亡后的断后工作!
- 对象数组中的每个元素消亡时,每个元素的析构函数都会被调用
delete
```cpp Ctest * pTest = new Ctest; delete pTest; // 调用析构函数
Ctest * pTest = new Ctest[2]; delete []pTest; // 调用两次
<a name="4iYgy"></a>### 函数返回值时调用```cppclass A {public:~A() {cout << "called" << endl;}};A fun(A obj) { // 临时对象消亡,调用一次return obj; // 也调用一次}int main(){obj = fun(obj);return 0; // 也调用一次}// 输出三次
