JGC*_*JGC 2 c++ string class operator-overloading
我想要一个像下面这样的课程:
Class Test {
Test();
~Test();
...
}
Run Code Online (Sandbox Code Playgroud)
我希望能够使用以下声明:
std::string str;
Test t;
str = t;
Run Code Online (Sandbox Code Playgroud)
我该怎么办?我应该覆盖to_string吗?如果是,似乎无法从std :: string类继承.或者我必须覆盖特殊运算符?指针分配怎么样?如下:
std::string str;
Test* t = new Test();
str = t;
Run Code Online (Sandbox Code Playgroud)
您可以提供用户定义的转换运算符std::string:
class Test {
//...
public:
operator std::string () const {
return /*something*/;
}
};
Run Code Online (Sandbox Code Playgroud)
这将允许将Test对象隐式转换为a std::string.
| 归档时间: |
|
| 查看次数: |
148 次 |
| 最近记录: |