c++ - 如何从所有成员在c ++中都是公共的封闭类访问嵌套类成员函数?

问题描述

我在传感器库开发中使用嵌套类并遇到错误。下面是示例代码和说明。

MainClass.cpp

class MainClass
{
 public:      
     class nested_class;
     void func1(){
       nested_class1.print();
     }
};

NestedClass.cpp

class MainClass::nested_class
{
 public:
      virtual void print() = 0;
};

Nested1.cpp

class nested_class1: virtual public MainClass::nested_class{
    public:
        void print();
};
void nested_class1::print(){
        cout<<"This is for 1\n";
    }

Nested2.cpp

class nested_class2 : virtual public MainClass::nested_class{
    public:
    void print(){
        cout<<"This is  for 2";
    }
};

我正在尝试使用它来扩展我的传感器库中的抽象概念。但是这样做会出现以下错误: print() 未在此范围内声明

我是这个概念的新手,因此很难在这里找到问题。我哪里出错了?如果需要,我可以提供更多详细信息。

提前致谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)