标签:class operator namespace bsp 实现 生成 const 运算符 names
在C++头文件<utility>中,定义了一个命名空间rel_ops,其中专门存放了四个不同的比较操作符:>=、<=、>、!=。代码实现如下:
namespace std{ namespace rel_ops{ template<class T> inline bool operator!=(const T&x, const T&y){ return !(x==y); } template<class T> inline bool operator>(const T&x, const T&y){ return y<x; } template<class T> inline bool operator>=(const T&x, const T&y){ return !(y < x); } template<class T> inline bool operator<=(const T&x, const T&y){ return !(x < y); } }
即实现上述四个比较运算符,只需要我们实现<和==,其他四个可自动生成。
在程序中使用 using namespace std::rel_ops; 即可自动生成这四个运算符。
标签:class operator namespace bsp 实现 生成 const 运算符 names
原文地址:https://www.cnblogs.com/mindulmindul/p/12245144.html