我有一堂简单的课:

class cup{
public:
     cup();
     void drinkwater(water *t); // error occurs here
private:
     class water{
     public:
          int litres;
     };
};


但是我得到一个错误,说尚未声明“水”。有什么方法可以不必上水上课而进入课堂?

最佳答案

class water;定义上方的私有部分中前向声明drinkwater,例如

class cup{
    class water;
public:
     cup();
     void drinkwater(water *t); // error occurs here
private:
     class water{
     public:
          int litres;
     };
};

关于c++ - 如何访问另一个类中声明的类?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32685008/

10-11 20:54