C++ 函数默认参数

2021-05-27  本文已影响0人  严青_

默认参数

int func(int a , int b = 10) {
 return a + b;
}


void func1(int a , int b = 20, int(*p)(int , int) = func ){
      p(a,b);
}

规则

  • 参数按照从右到左顺序,不能间隔
  • 函数有声明和实现.默认参数只能在声明中设置
    *可以是常量,全局符号(全局变量,函数名)

实现原理

省略的参数其实也是被move或者push到寄存器中的

void display(double a, double b = 10) {}

int main()
{
     display(10.0);
}
VS IDE 反汇编结果
IDA查看结果
display(10.0,20.0);
image.png image.png
上一篇 下一篇

猜你喜欢

热点阅读