-
关于内联函数的使用
——MoaKap的学习笔记
-
用内联取代宏定义
内联函数相对于宏定义来说,多了类型安全检查、自动类型转换等验证功能。
Assert不是函数,而是宏。
-
关键字inline必须与函数定义体放在一起才能使函数成为内联,仅将inline放在函数声明前面不起任何作用。
如下函数Foo不能成为内联函数:
Inline void Foo(int x,int y);//inline仅与函数声明放在一起
Void Foo(int x,int y)
{
。。。
}
如下函数Foo为内联函数:
void Foo(int x,int y);//inline仅与函数声明放在一起
Void Foo(int x,int y)
{
。。。
}
-
定义在类声明中的成员函数将自动成为内联函数。
-
以下情况不宜用内联:
1) 函数体内代码比较长时,使用内联会导致内存消耗较高;
2) 函数体内有循环时不宜用内联函数。