为什么C++ 不叫++C?
2015-09-04 17:55
274 查看
这是一个叫人眼前一亮的题目, 在让人熟悉自增操作前置和后置两种形式时,也可以了解下C++ 的命名来历。
自增(++)操作符有前置和后置两种形式,其区别如下:
++i , 返回的是左值, 是i 加1 后 i 这个对象本身
i++ , 返回的是右值, i 这个对象会加1 ,但返回的是i 未修改前的数值。
两种不同的返回值是由于其本质操作不同导致:
++i, 将i 增加1 后返回i;
i++ , 开辟临时变量存储i 当前值 const j =i, i增加1 ,返回 i未修改的值 const j.
所以一般来说,除非必须使用后置形式的情况, 我们都使用前置形式, 其效率更高,性能更好
最后,理解下为什么叫C++ 而不是++C?
首先要使用C,++ 是确定的,表示新的语言是C语言的超集,是从C语言演化而来的。
C++表示对C语言进行扩展之后,还可以使用C语言的内容,而写成++C则表示无法再使用C的原始值了,也就是说C++不能向下兼容C了,这与实际情况不符。
自增(++)操作符有前置和后置两种形式,其区别如下:
++i , 返回的是左值, 是i 加1 后 i 这个对象本身
i++ , 返回的是右值, i 这个对象会加1 ,但返回的是i 未修改前的数值。
两种不同的返回值是由于其本质操作不同导致:
++i, 将i 增加1 后返回i;
i++ , 开辟临时变量存储i 当前值 const j =i, i增加1 ,返回 i未修改的值 const j.
所以一般来说,除非必须使用后置形式的情况, 我们都使用前置形式, 其效率更高,性能更好
最后,理解下为什么叫C++ 而不是++C?
首先要使用C,++ 是确定的,表示新的语言是C语言的超集,是从C语言演化而来的。
C++表示对C语言进行扩展之后,还可以使用C语言的内容,而写成++C则表示无法再使用C的原始值了,也就是说C++不能向下兼容C了,这与实际情况不符。
相关文章推荐
- C++入门经典 笔记 (第十三章)高级引用和指针
- C语言实现栈操作
- 华为OJ题库-C++实现蛇形矩阵
- [JNI] Java 调用 C++ dll
- JNI开发之 c++输出日志到Logcat
- c++虚函数机制
- C++基础---函数指针
- python类变量与 C++的静态变量并不等效
- C++基础---有返回值类型函数(指针函数)
- 继承关系中的虚函数表
- C++基础---有返回值类型函数(返回引用类型)
- C++中的虚函数详解
- C++标准库异常类
- C++基础---有返回值类型函数(返回非引用类型)
- stl内存池学习
- extern "C"的用法解析
- C++堆栈的比较
- C++基础---无返回值函数(void函数)
- C++基础---函数的返回类型
- c语言描述之广度优先搜索——无权最短路径