C++中自增运算符和自减运算符

一·自增运算符

“++”为自增运算符,它的作用是使变量值+1

类型分为前自增和后自增<eg.++i,i++>

二者单独使用时无区别<i++=++i>

但在混合运算时二者不等同

在混合运算中

i++:先引用后+1

++i:先+1后引用

例题1:若i=3,请算出j1=++i,i1 和j2=i++,i2的值

  j1=++i=4      i=4

  j2=i++=3      i=4

例题2:若i++=3,请算出-i++的值

-(i++)=-3

由例二可知后自增的运算符优先于负号运算符

 


(此题为《c++程序设计第三章第七题》) 

二·自减运算符

“--”为自减运算符,它的作用是使变量值-1(相关用法同自增运算符)

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
C++自增运算符可以被重载为成员函数或全局函数。自增运算符的重载函数必须返回一个值,通常是一个引用,以允许连续调用该运算符。 下面是一个示例,演示如何重载自增运算符 ++ 作为成员函数: ```cpp class Number { public: Number(int value = 0) : m_value(value) {} Number& operator++() { m_value++; return *this; } int getValue() const { return m_value; } private: int m_value; }; int main() { Number n(5); ++n; cout << n.getValue() << endl; // 输出 6 return 0; } ``` 在上面的示例,Number 类重载了自增运算符 ++ 作为成员函数。重载函数使用前缀形式,即 ++n。它将 m_value 成员变量递增一次,然后返回 *this 的引用,允许连续调用该运算符。 下面是一个示例,演示如何重载自增运算符 ++ 作为全局函数: ```cpp class Number { public: Number(int value = 0) : m_value(value) {} friend Number& operator++(Number& num) { num.m_value++; return num; } int getValue() const { return m_value; } private: int m_value; }; int main() { Number n(5); ++n; cout << n.getValue() << endl; // 输出 6 return 0; } ``` 在上面的示例,Number 类重载了自增运算符 ++ 作为全局函数。重载函数使用前缀形式,即 ++n。它将 Number 对象的 m_value 成员变量递增一次,然后返回 Number 对象的引用,允许连续调用该运算符。注意,这里使用了 friend 关键字,以便访问 Number 类的私有成员变量 m_value。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习c++的大一少女

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值