在 C++ 中,我应该何时为函数/方法编写关键字“inline”?


在 C++ 中,**inline** 关键字用于不同的位置。用于创建内联变量或内联命名空间,以及用于创建内联方法或函数。

C++ **inline** 函数是一个强大的概念,通常与类一起使用。如果一个函数是内联的,则编译器会在编译时将该函数代码的副本放置在每个调用该函数的位置。

对内联函数的任何更改都可能需要重新编译该函数的所有客户端,因为编译器需要再次替换所有代码,否则它将继续使用旧的功能。

要内联一个函数,请在函数名前放置关键字**inline**,并在进行任何对该函数的调用之前定义该函数。如果定义的函数超过一行,编译器可能会忽略内联限定符。

类定义中的函数定义是内联函数定义,即使没有使用**inline**说明符。

以下是一个示例,它使用内联函数返回两个数字中的最大值:

示例

#include <iostream>
using namespace std;
inline int Max(int x, int y) {
   return (x > y)? x : y;
}
// Main function for the program
int main() {
   cout << "Max (20,10): " << Max(20,10) << endl;
   cout << "Max (0,200): " << Max(0,200) << endl;
   cout << "Max (100,1010): " << Max(100,1010) << endl;
   return 0;
}

输出

Max (20,10): 20
Max (0,200): 200
Max (100,1010): 1010

更新于: 2019-07-30

153 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告