我得到了编译器错误 C2071当我尝试实施explicit operator bool
:
class C
{
public:
explicit operator bool() const
{
return !!*this;
}
};
为什么?我怎么解决这个问题?
我正在使用 Visual Studio 2012 RC。
Visual Studio 2012 不支持显式转换运算符,请参阅Visual C++ 11 中的 C++11 功能.
这些文章讨论了安全布尔习语:
- http://www.artima.com/cppsource/safebool.html
- http://en.wikibooks.org/wiki/More_C++_Idioms/Safe_bool
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)