我有一个类,它有一个标记为显式的std :: string类型的转换运算符。这里是类为什么明确的操作符std :: string不起作用
class MyClass {
public:
// methods ...
explicit operator std::string() const {
// convert to string ...
}
}
问题是,当我使用类型的变量的static_cast MyClass的我得到的错误“没有配对转换从‘MyClass的’的static_cast来“的std :: string又名......”我似乎有当我为任何自定义类型定义转换运算符时出现同样的问题。显式修饰符只是为了转换为基本类型而定义的,还是另一个编译器错误。
[Works for me](http://ideone.com/bO5g9O)。 SSCCE或它没有发生。 –
@IgorTandetnik'使用namespace std'?耻辱。 – Yakk
使用Clang 3.3编译并运行良好。 – jbruni