我知道您可以使用 inline 关键字,或者只是将一个方法放在类声明中,比如短 ctor 或 getter 方法,但是编译器是否会最终决定何时内联我的方法?
例如:
inline void Foo::vLongBar()
{
//several function calls and lines of code
}
如果编译器认为它会使我的代码效率低下,它会忽略我的内联声明吗?
作为一个附带问题,如果我在我的类之外声明了一个 getter 方法,如下所示:
void Foo::bar() { std::cout << "baz"; }
编译器会在幕后内联吗?