如何制作我的代码知道我是否正在调用预增量或后增量运算符

Inv*_*tus -1 c++ operator-overloading c++11

可能重复:
Overload ++运算符

假设我有一个类,其中i重载预增量运算符++v并且还重载后增量运算符v++.但是当我写这些重载函数时说Complex operator++(const Complex & c ).我如何在我的代码中同时声明和定义这两个运算符?

我的代码如何知道调用哪个重载(预先增加一个或增加一个增量)?据我所知,这可能取决于我宣布这些前后增量运算符的方式Can Someone帮助我解决这个问题.提前致谢

Oli*_*rth 7

来自http://www.parashift.com/c++-faq-lite/operator-overloading.html#faq-13.14:

 class Number {
 public:
   Number& operator++ ();    // prefix ++
   Number  operator++ (int); // postfix ++
 };
Run Code Online (Sandbox Code Playgroud)