const Byte& operator++()
{
b++;
return *this;// 前缀形式 返回改变后的对象
}
const Byte& operator--()
{
b--;
return *this;
}
const Byte operator++(int)
{
Byte before(b);
b++;
return before;//后缀形式 返回改变前的对象 创建一个独立的类类返回先前的值 所以采用的是按值进行返回
}
const Byte operator--(int)
{
Byte before(b);
b--;
return before;
}
为什么返回this指针的解引用的时候函数的返回值要定义为类的引用类型呢? 可以直接定义为按值进行返回吗?
那样会多调用一次拷贝构造函数浪费性能,如果没有定义拷贝构造函数,操作不会作用到原来的变量上,也就是不会自增。
可以,但意义会发生改变.
返回值和this指向的东西会不一样,即内存地址不一样