来自不同类的内联类函数,都是内联的?

时间:2017-05-29 08:41:00

标签: c++ class inline

这可能是一个愚蠢的问题,但我很好奇

在c ++中定义类中的函数时,它会自动内联。

当你有2个类并且类'a'从类'b'调用一个函数时会发生什么,两个函数都在相应的头文件中定义,它们是否都是内联扩展的?

class a
{
   void check_stuff()
   {
      b.do_stuff(param);
   }
};

class b
{
  type xyz;

  public:
  void do_stuff(type in)
  {
     xyz += in; 
  }
};

1 个答案:

答案 0 :(得分:1)

  

它们都是内联扩展的吗?

函数是否内联以及函数调用是否内联展开并不直接相互关联。可以在不扩展的情况下调用内联函数,在某些情况下,可以内联扩展非内联函数。

是的,在内联展开的函数中扩展内联函数是可能的。