C++中的缺省参数为什么必须从右往左连续定义呢 跟压栈顺序有关么
1条回答 默认 最新
快乐鹦鹉 2021-07-28 21:38关注因为只有这样你在调用的时候才能判断缺省哪个参数
加入不这么规定,你定义一个缺失参数的函数如下:
int fun(int a,int b=0,int c,int d)
那么你调用的时候如果写fun(m,n,k)的话,编译器无法判断这m,n,k到底应该给那几个参数啊
跟压栈没啥关系解决 无用评论 打赏 举报
因为只有这样你在调用的时候才能判断缺省哪个参数
加入不这么规定,你定义一个缺失参数的函数如下:
int fun(int a,int b=0,int c,int d)
那么你调用的时候如果写fun(m,n,k)的话,编译器无法判断这m,n,k到底应该给那几个参数啊
跟压栈没啥关系