你能内联静态成员函数吗?

Joh*_*ohn 16 c++ static-methods inline

我有一个静态成员函数,它只是我的语法糖,我希望它的主体出现在通过参数传递给它的运动的位置.将

inline static foo(int a) {return a & 0x00000040;}
Run Code Online (Sandbox Code Playgroud)

如果inline不存在的话就像内联一样内联static

Set*_*gie 19

编译器选择它想做的事情,所以我们不能说它会选择做什么.也就是说,功能static不会阻止内联; static函数基本上是具有不同命名风格的自由函数,并且可以访问类的私有成员.

  • 类内部的定义是否暗示无论如何都需要内联? (2认同)

小智 7

静态成员方法没有this参数,因此只能访问静态成员变量。

它与方法是否内联不同。所以两者是相互独立的。

编译器决定是否内联方法。您对关键字的使用仅仅是对编译器的提示。