大佬知道C语言中a++,与++a哪个执行速度更快吗,为什么呢,最近笔试被问倒了,
答案:1 悬赏:10 手机版
解决时间 2021-11-22 16:49
- 提问者网友:爱唱彩虹
- 2021-11-22 05:06
大佬知道C语言中a++,与++a哪个执行速度更快吗,为什么呢,最近笔试被问倒了,
最佳答案
- 五星知识达人网友:洒脱疯子
- 2021-11-22 06:32
程序是按照步骤来的,
如果是a++的话,在那一行代码中,a的值是不变的,下一行才发生变化,
++a则是在那一行已经发生了变化追问不是这个回答,一个先赋值后加,一个是先加后赋值,这个我是知道的,题目问的是,这两个代码执行的效率孰高孰低,为什么追答++a可以返回对象的引用,而a++一定要是返回对象的值。可想而知引用的开销当然比直接对对象进行操作要效率高很多,节省很多开销。
前置++和后置++存在本质上的区别:
前置++ 不会产生临时对象
后置++ 在返回时有一个临时对象的创建
在前置++和后置++ 效果相同的时候,
最好使用前置++
如果是a++的话,在那一行代码中,a的值是不变的,下一行才发生变化,
++a则是在那一行已经发生了变化追问不是这个回答,一个先赋值后加,一个是先加后赋值,这个我是知道的,题目问的是,这两个代码执行的效率孰高孰低,为什么追答++a可以返回对象的引用,而a++一定要是返回对象的值。可想而知引用的开销当然比直接对对象进行操作要效率高很多,节省很多开销。
前置++和后置++存在本质上的区别:
前置++ 不会产生临时对象
后置++ 在返回时有一个临时对象的创建
在前置++和后置++ 效果相同的时候,
最好使用前置++
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯