欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

13_细谈内联函数inline

程序员文章站 2022-04-11 13:01:17
...

1、宏函数(带参数的宏)的缺点:

第一:在c中也会出现,宏看起来像一个函数调用,但是会有隐藏一些难以发现的错误(比如参数的完整不能完全避免)。

第二:是c++特有的,预处理器不允许访问类的成员,也就是说预处理器宏不能用作类的成员函数。

2、内联函数的特点:

内联函数:内联函数为了继承宏函数的效率,没有函数调用时开销,然后又可以像普通函数那样,可以进行参数,返回值类型的安全检查,又可以作为成员函数

内联函数:是一个真正的函数。函数的替换 发生在编译阶段

inline int my_mul(int x,int y)
{
    return x*y;
}
void test01()
{
    cout<<"my_mul = "<<my_mul(10+10,20+20)<<endl;
}

任何在类内部定义的函数自动成为内联函数。

13_细谈内联函数inline

3、内联函数条件:

1、不能存在任何形式的循环语句  

2、不能存在过多的条件判断语句

3、函数体不能过于庞大  不能对函数进行取址操作

13_细谈内联函数inline

相关标签: c++高级编程 c++