有没有一种方法可以在类之间传递函数调用?
例如:

//foo.cpp
foo::foo
{
  ...
  myfoo2 = new foo2();
  ...
}

//foo2.h
class foo2
{
  ...
  public:
  void method1();
  void method2(int arg2)
  ...
}


现在我想从foo类的外部使用foo2的方法(例如method2)
无需执行以下操作:

//foo.cpp
...
void foo::method2(int arg2)
{
  myfoo2->method2(arg2);
}


问题是,我有很多这样的东西,这会占用很多空间,而且看起来不太好。
还有其他解决方案,或者至少是起同样作用的简短版本吗?

先感谢您!

最佳答案

您可以使用私有继承在foo类中包含foo2对象,而无需创建is-a关系。然后,您可以使用using语句简单地公开该函数,如下所示:

class foo : private foo2
{
public:
    using foo2::method2;
};

关于c++ - C++从类到类的“传递”函数调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32902827/

10-09 01:20