宏函数与自定义函数的区别与优缺点
2016-11-24 22:40
309 查看
#define max a > b ? a : b //比较大小的宏函数
int max(int a,int b) //自定义比较大小的函数
{
return a > b ? a : b;
}
如上是两个简单的宏函数和自定义函数
1、宏函数没有定义形参和返回值类型而自定义的函数定义形参和返回值类型;
2、相比较宏函数省去了分配栈幁,传参返回值的操作运行效率高,不占用内存空间,执行速度快;
3、宏函数一般用于简短,频繁调用的函数;
4、但宏函数在预处理时候进行只进行宏替换不进行语法检查而且不能进行复杂功能;
5、自定义的函数可以执行复杂功能但占用内存空间执行效率相对于宏函数慢;
宏函数就是用编译时间换内存空间
int max(int a,int b) //自定义比较大小的函数
{
return a > b ? a : b;
}
如上是两个简单的宏函数和自定义函数
1、宏函数没有定义形参和返回值类型而自定义的函数定义形参和返回值类型;
2、相比较宏函数省去了分配栈幁,传参返回值的操作运行效率高,不占用内存空间,执行速度快;
3、宏函数一般用于简短,频繁调用的函数;
4、但宏函数在预处理时候进行只进行宏替换不进行语法检查而且不能进行复杂功能;
5、自定义的函数可以执行复杂功能但占用内存空间执行效率相对于宏函数慢;
宏函数就是用编译时间换内存空间
相关文章推荐
- 从汇编看,vc调用API函数和自定义函数的区别
- SQL中存储过程和自定义函数的区别
- 自定义函数与储存过程的区别
- 存储过程和自定义函数的区别
- SQL中存储过程和自定义函数的区别(转载)
- 存储过程和自定义函数的区别(归纳)
- SQL中存储过程和自定义函数的区别
- 存储过程和自定义函数的区别
- MySQL存储过程/存储过程与自定义函数的区别
- 自定义函数的存储过程的区别
- 存储过程和自定义函数的区别
- (转)存储过程和自定义函数的区别
- 存储过程与自定义函数区别
- SQL中存储过程和自定义函数的区别
- SQL Server技术问题之自定义函数优缺点
- SqlServer Dev(1) - 存储过程和自定义函数的区别
- SQL中存储过程和自定义函数的区别
- 百度面试题:宏的概念,与函数的区别,优缺点的比较。
- 数据库中存储过程与自定义函数之间的区别
- SQL中存储过程与自定义函数的区别