宏定义#define
2014-03-06 16:43
295 查看
#define即define。
在C或C++语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。 “define”为宏定义命令。
(1) 方便程序的修改
(2) 提高程序的运行效率
Windows编程里面就把类型名字全换了
比如说早期的程序字符串都用ascii写的,现在大部分用unicode写的
Windows编程中的函数都对应两个版本
比如MessageBox函数
有MessageBoxA(采用ASCII)
MessageBoxW(采用unicode)
当然这里没用到typedef,道理是一样的
程序员编程的时候,不用管是ascii还是unicode,反正用MessageBox就对了
因为windows.h中有类似的语句
#ifdef unicode
#define MessageBox MessageBoxW
#else
#define MessageBox MessageBoxA
#endif
用Unicode的时候只要定义一下unicode,MessageBox就全部变成MessageBoxW
在C或C++语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。 “define”为宏定义命令。
宏定义优点
(1) 方便程序的修改(2) 提高程序的运行效率
Windows编程里面就把类型名字全换了
比如说早期的程序字符串都用ascii写的,现在大部分用unicode写的
Windows编程中的函数都对应两个版本
比如MessageBox函数
有MessageBoxA(采用ASCII)
MessageBoxW(采用unicode)
当然这里没用到typedef,道理是一样的
程序员编程的时候,不用管是ascii还是unicode,反正用MessageBox就对了
因为windows.h中有类似的语句
#ifdef unicode
#define MessageBox MessageBoxW
#else
#define MessageBox MessageBoxA
#endif
用Unicode的时候只要定义一下unicode,MessageBox就全部变成MessageBoxW
相关文章推荐
- 反编译教程
- ASP.NET AJAX(Atlas)和Anthem.NET——管中窥豹般小小比较
- 《三体——地球往事》
- 声明
- ECShop 添加文章时作者默认为当前登录用户
- linux Centos 配置本地yum源
- java中的向下转型和向上转型
- 一次rac+dataguard 创建过程遇到密码文件问题
- ios 键盘事件处理
- Hibernate Annotation导入包说明
- Android四大组件的生命周期
- Android -- 状态栏通知Notification、NotificationManager详解
- maven 常用命令
- class 字节码研究,针对动态代理源码深入研究
- C,C++宏中#与##的讲解
- sublime text3的Package Control安装
- poj3461 Oulipo,Kmp
- 求直线与三角形的交点
- Http11: org.apache.coyote.http11
- myEclipse 总是默认打开一个工作空间