Menu Home

类型转换函数

用转换构造函数可以将一个指定类型的数据转换为类的对象.
用类型转换函数(type conversion function)可以将一个类的对象转换为一个指定类型的数据.
类型转换函数的一般形式为:

operator 类型名()
{实现转换的语句}

在函数名前面不能指定函数类型,函数没有参数.

#include <string>
#include <iostream>
using namespace std;

class A {
    string s;
public:
    A() : s("hello") {}
    virtual ~A() {}
    operator const string&() { return s; }
};

int main() {
    A a;
    cout << string(a) << endl;
}