【C/C++】宏函数与内联函数的区别

【C/C++】宏函数与内联函数的区别

文章目录

  • 【C/C++】宏函数与内联函数的区别
    • 一、概念
    • 二、特性
    • 三、优缺点
      • 3.1 内联函数的优缺点?
      • 3.2 宏的优缺点?
    • 四、笔试题
      • 4.1 为什么要是用宏,宏有什么优缺点?
      • 4.2 宏函数与内联函数的区别?
      • 4.3 C++中被const修饰的变量已经是常量,具有宏替换属性
    • 五、总结


一、概念

  以inline修饰的函数就叫做内联函数,C++编译器在编译时会在调用内联函数时地方展开,没有函数压栈的开销,内联函数提升程序的运行效率。

  内联函数在调用时不是像一般函数那样要转去执行被调用函数的函数体,执行完成后在转回调用函数中,执行其后的语句;而是在调用处 用内联函数体 的代码来替换,以这样的方式节省函数调用的开销,提高运行效率。

#include
using namespace std;
//内联函数
inline int Max(int a, int b)
{
   
    if (a < b)
        return b;
    return a;
}
int main()
{
   

你可能感兴趣的:(C/C++,宏函数,内联函数,函数压栈)