関数を静的に宣言せずに次の C コードをコンパイルしようとすると、リンカー エラーが発生します。
undefined reference to '_fun'
しかし、静的にしないと機能します。C++ では、static
キーワードがなくても問題なく動作します。
// Doesn't work
inline int fun()
{
return 3;
}
// Works
static inline int fun()
{
return 3;
}
int main(int argc, const char * argv[])
{
printf("%i", fun());
}