prefix, surfix操作符重载

来源:互联网 发布:凡客建站seo 编辑:程序博客网 时间:2024/05/16 17:14
C++标准规定:当为一个类型重载++, --的前置版本时,不需要参数;当为一个类型重载++, --的后置版本时,需要一个int类型的参数作为标志。
可参考<The design and Evolution of C++>
  1. class Integer{
  2.   long m_data;
  3. public:
  4.   Integer(long data): m_data(data){}
  5.   Integer& operator++(){
  6.     cout << "Integer::operator++() called" << endl;
  7.     m_data++;
  8.     return *this;
  9.   }
  10.   Interger operator++(int){
  11.     cout << "Integer::operator++(int) called" << endl;
  12.     Integer tmp = *this;
  13.     m_data++;
  14.     return tmp;
  15.   }
  16. };

原创粉丝点击