【1】显式转换操作符 以前对explicit关键字的理解可以参考随笔《explicit关键字》。 而在C++11中,标准将explicit的使用范围扩展到了自定义的类型转换操作符上,以支持所谓的“显式类型转换”。 explicit关键字作用于类型转换操作符上,意味着只有在直接构造目标类型 或 显式类 ...
分类:
编程语言 时间:
2020-01-27 23:40:22
阅读次数:
110
隐式类型转换是C++的一个既好又坏的特性。它给人以方便,但可能造成一些十分隐晦的错误。 类型转换提供了一个类型向另一个类型的构造。 class?X
{
public:
????operator?int()?const?noexcept
????{...
分类:
编程语言 时间:
2015-09-28 14:50:01
阅读次数:
241
C++11之前,已经支持显式转换操作符
#include
using namespace std;
template
class Ptr {
public:
Ptr(T* p): _p(p) {}
operator bool() const {
if (_p != 0)
return true;
else
...
分类:
编程语言 时间:
2014-12-15 17:23:54
阅读次数:
169