法本面试 C++

i++,++i 区别

++i 性能要比i++ 性能要高

https://blog.csdn.net/wenchangwenliu/article/details/104564555/

// 前缀形式:
int& int::operator++() //这里返回的是一个引用形式,就是说函数返回值也可以作为一个左值使用
{//函数本身无参,意味着是在自身空间内增加1的
  *this += 1;  // 增加
  return *this;  // 取回值
}

//后缀形式:
const int int::operator++(int) //函数返回值是一个非左值型的,与前缀形式的差别所在。
{//函数带参,说明有另外的空间开辟
  int oldValue = *this;  // 取回值
  ++(*this);  // 增加
  return oldValue;  // 返回被取回的值
}

 

posted @ 2022-01-07 10:00  joker_2255  阅读(52)  评论(0)    收藏  举报