++ 操作符是可以被重载的,在全局函数和成员函数里都可以被重载
重载前置++
重载前置++操作符不需要额外的参数
Test& operator ++()
{
++Value;
return * this;
}
重载后置++
在重载后置++操作符的时候需要一个 int 类型的占位参数
Test operator ++(int)
{
Test ret(Value);
Value++;
return ret;
}
区别
1、对于基础类型的变量,前置++ 和后置++ 的效率基本相同,所有根据项目组编码规范去选择。
2、对于类类型的,因为后置++ 要生成一个返回值对象,所以其效率低于前置++,因此尽量使用前置++ 操作符提高程序效率。