如何显式声明内联函数

How to declare inline functions explicitly?

本文关键字:函数 声明 何显式      更新时间:2023-10-16

不需要显式声明内联函数,因为它们的实现是在头文件中定义的。但是为了组织的目的,我想这样做。例如

// Group declaration firstly for readability.
inline void fooA();
inline void fooB();
inline void fooC();
...
// Implementations
inline void fooA()
{
   ...
}
inline void fooB()
{
   ...
}
inline void fooC()
{
   ...
}

我的问题是:我是否需要在声明和实现中同时使用inline关键字,或者其中一个可以删除?

我在内联函数的前向声明中找到了答案。这是一个重复的问题。不好意思

您需要将其包含在声明、定义或两者中。

但是注意定义必须在使用该函数的每个编译单元中可见。

你不需要两者。你可以在实现时删除内联关键字,在声明函数时保留内联关键字…与虚拟关键字

相同