【发布时间】:2010-10-22 19:39:46
【问题描述】:
和问题一样,如果我在我的类中定义一个字符串运算符:
class Literal {
operator string const () {
return toStr ();
};
string toStr () const;
};
然后我使用它:
Literal l1 ("fa-2bd2bc3e0");
cout << (string)l1 << " Declared" << endl;
使用显式转换一切正常,但是如果我删除(字符串),编译器会说它需要在 std::string 中声明的转换运算符。它不应该自动转换我的类型吗? 已解决:我正在重载 operator
【问题讨论】:
标签: c++ casting stdstring implicit-conversion user-defined-types