C++内联函数

C++内联函数

C++类中的内联函数

  • C++ 内联函数是通常与类一起使用。如果一个函数是内联的,那么在编译时,编译器会把该函数的代码副本放置在每个调用该函数的地方。
  • 如果想把一个函数定义为内联函数,则需要在函数名前面放置关键字 inline,在调用函数之前需要对函数进行定义。如果已定义的函数多于一行,编译器会忽略 inline 限定符。
  • 在类定义中的定义的函数都是内联函数,即使没有使用 inline 说明符。
  • 隐式内联
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Person
{
public:
Person(const string &name)
{
Name = name;
}
void printName()//printName 定义在类里面是隐式内联函数
{
cout << Name << endl;
}
private:
string Name;
};
  • 在类里面显示声明,在类外面定义
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Person
{
public:
Person(const string &name)
{
Name = name;
}
inline void printName();//成员被函数前加了inline是显式内联函数
//在类里面显式声明
private:
string Name;
};

void Person::printName()
{//在类外面定义
cout << Name << endl;
}
  • “追加”内联
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Person
{
public:
Person(const string &name)
{
Name = name;
}
void printName();
//在类里面没有显式声明
private:
string Name;
};
inline void Person::printName()//成员被函数前加了inline是显式内联函数
{//在类外面显式定义
cout << Name << endl;
}
作者

TIANYUZHOU

发布于

2020-03-27

更新于

2021-02-17

许可协议

评论