c++调用构造函数进行类型转换实例代码

c++调用构造函数进行类型转换实例代码,我们可以把数字作为对象赋值给另外一个对象,这样在对该对象赋值表达式运算时,首先要对数字进行类型转换,同时判断该类的构造函数的参数是否与数字的类型相匹配,假如匹配则调用构造函数创建一个临时对象,跟着将该临时对象赋给赋值操作符左边的对象,最后调用析构函数删除临时对象。以下是实例代码:

#include <iostream>
using namespace std;

class A{
public:
A(int x){i=x;cout<<”构造函数执行!\n”;}//为了防止隐式转换,我们可以在构造函数前面加上explicit关键字,防止意外发生!
~A(){cout<<”析构函数执行了!\n”;}
void get(){cout<<”i=”<<i<<endl;}
private:
int i;
};

int main(){
A a(99);
a.get();
a=1000;//隐式转换,调用构造函数创建临时对象,赋值后删除临时对象
return 0;

} 本文链接地址: c++调用构造函数进行类型转换实例代码