C++ 用户自定义类型

来源:互联网 发布:印度经济 知乎 编辑:程序博客网 时间:2024/06/06 12:54

定义一个类CDataNode,这个类表示一个树形数据结构中的一个节点。遍历树形结构判断节点是否为空的时候,想直接用这样的方式:

CDataNode node;if(node){}else{}

实现这个功能的方法,其实就是用户自定义类型。定义一个能够用if()直接进行判断的数据类型:int bool

//.h文件中class CDataNode{public:CDataNode();operator bool() const;bool operator !() const;protected:char *m_pData;}//.cppCDataNode::operator bool() const{return m_pData == NULL ? 0 : 1;}bool CDataNode::operator !() const{return m_pData == NULL ? ture : false ;}

这里有几个地方需要注意,第一用户自定义数据类型的时候,是不需要定义返回值的;第二,!属于符号重载

0 0
原创粉丝点击