如果您在编译器中启用了完全优化并且有这样的类设置:
class A
{
void Do_A_Stuff();
};
class B
{
A a;
void Do_B_Stuff() { a.Do_A_Stuff(); }
};
class C
{
B b;
void Do_C_Stuff() { b.Do_B_Stuff(); }
};
class D
{
C c;
void Do_D_Stuff() { c.Do_C_Stuff(); }
};
是否存在调用Do_D_Stuff()
比直接调用慢的情况Do_A_Stuff()
?此外,这是否需要inline
每个包装器“链”上的关键字,或者,因为这只是一个建议,编译器是否可以决定在没有关键字的情况下对其进行优化?
我意识到有很多关于内联的信息可用,但我找不到任何关于将许多包装器链接在一起的信息。