const & define
来源:互联网 发布:淘宝发货前申请了退款 编辑:程序博客网 时间:2024/06/10 07:33
const 定义常量。
const 在*前,锁定的是不能通过(*指针变量)的改变来操作指针所指向变量的改变(如果指针指向的变量通过其他途径改变了(比如赋值),那么(*指针变量)的值也会跟着改变);const在*后,锁定的是指针变量不能修改。如果指针要指向的变量为常量,则const必须在*之前,保持不可更改性。指针的目的是通过间接的方式,修改变量。const * 则把这种间接修改的方式给阻断了,只保留了间接读取的功能。
const可以节省空间,避免不必要的内存分配。
define
宏的副作用:在使用的时候,尽量避免做计算操作;宏是将代码复制到对应的位置,为了保证代码的稳定,要尽可能地使用括号。
好处:也有其不可替代性。在实际开发过程中,是有可能临时拼接生成变量名的。不需要在战区为函数单独压栈,用空间换取栈区的消耗。
eg:
#define CONTACT(x, y) x##y // 拼接字符串(例如在抽取单例的宏时,定义 shared##className)
那么:CONTACT(user, Name) => userName
#define TO_STR(x) #x // 转换字符串
那么:TO_STR(llllllldlaslfj) => llllllldlaslfj
0 0
- const & define
- const & define
- "const" & "#define"
- const和#define
- const and #define
- #define 与 const
- #define 与 const
- #define和const区别
- static const与#define
- inline 、const、define
- 面试3(const、#define )
- define、const&inline
- const define inline
- const 与define
- typedef define const
- const 与 define
- #define 与const区别
- 预处理 const #define
- python:open/文件操作
- 七天学会NodeJS
- 单体模式Singleton
- MySQL中的commit和rollback
- 求助:快速排序哪里出问题了?
- const & define
- R中安装rgl时“configure: error: missing required library GL”错误的解决方法
- Java基础知识10
- 关于sizeof,更详细的了解sizeof。。
- Qt第三方库QML-Box2D——安装测试
- Javascript Anonymous Function Called
- Java虚拟机 - 体系结构 内存模型
- TCP\IP三次握手连接,四次握手断开分析
- 五大主流数据库模型