我是靠谱客的博主 还单身店员,这篇文章主要介绍C++ learning notes - Function可变长度参数表的实现内联函数constexpr函数(c++11)函数重载,现在分享给大家,希望可以做个参考。

可变长度参数表的实现

可以用initializer_list

内联函数

声明时使用关键字 inline。编译时,编译器在调用处用函数体进行替换,节省了参数传递、控制转移等开销。
注意

  • 内联函数体内不能有循环语句和switch语句;
  • 内联函数的定义必须出现在内联函数第一次被调用;
  • 对内联函数不能进行异常接口声明
inline double calArea(double radius)
{
          return PI * radius * radius;
}

constexpr函数(c++11)

常量表达式函数,可以初始化常量。constexpr函数的返回值必须是常量表达式,他可以用来给常量表达式赋值。这个工作在编译的时候完成

int nonconst_var = 100;  //变量
const int const_var1 = 2; //常量表达式,可以在编译的时候被确定
const int const_var2 = nonconst_var; //虽然是const,但是在编译的时候不能确定,则不能喝constexpr一起使用
constexpr int constexpr_var1 = 3 + const_var1 * 4;

函数重载

C++允许功能相近的函数在相同的作用域内以相同函数名声明,从而形成重载。方便使用,便于记忆。

重载函数的形参必须不同:个数不同或类型不同。变量名不同,返回值不同都不能构成重载。

最后

以上就是还单身店员最近收集整理的关于C++ learning notes - Function可变长度参数表的实现内联函数constexpr函数(c++11)函数重载的全部内容,更多相关C++内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(82)

评论列表共有 0 条评论

立即
投稿
返回
顶部