C++中宏和函数的区别
2016-01-11 20:45
183 查看
宏和函数写法以及调用方式,有很大的相似,但是他们却存在本质上的区别,函数调用时将实参表达式值求出来,然后赋值给形参,计算结果,而宏则是对实参表达式不做计算,直接替换。
eg:
int fun(int y){
return y*y;
}
#define FUN(y) y*y;
int y=3;
int a=fun(++y); //16
y=3;
int b=FUN(++y) //25
eg:
int fun(int y){
return y*y;
}
#define FUN(y) y*y;
int y=3;
int a=fun(++y); //16
y=3;
int b=FUN(++y) //25
相关文章推荐
- 【银行家算法】操作系统课程设计
- C++中vector向量的用法(自整)
- C++中四种类型转换方式
- C++中预处理(宏详解)
- bind--C++11
- 柔性数组
- sort函数的用法(C++排序库函数的调用)
- C++ ATL 中list中删除操作
- c/c++中指针的理解(初学者)
- 【复数的四则运算(C++)】
- iOS第五天 C语言 函数
- log4cpp安装使用
- C/C++文件操作效率比较——FILE/fstream
- c++ 模板 迭代器 使用问题解决方法(too few template-parameter-lists)
- C++浮点数输出位数控制相关函数
- 热门游戏 2048 C++ 源代码分享
- C++虚函数的底层实现原理
- Leetcode 16 - 3Sum Closest
- C语言-C的世界观
- C++入门(14):动态内存管理