比如自定义了一个int类,想要把自定义类的对象直接赋值给int变量,这时候就要用到类型转换重载了。
#include<iostream>
class intt//自定义int类
{
private:
int a;
public:
intt(int a)
:a(a){}
operator int()//类型重载
{
return a;
}
};
int main()
{
intt num=666;
int _num=num;
std::cout<<_num;
return 0;
}
最终输出结果是 666。
要注意的是类型重载函数相比其他符号重载函数是不需要有返回值的!!!