如何访问在另一个类中声明的类
How do I access a class declared inside another class?
我有一个简单的类:
class cup{
public:
cup();
void drinkwater(water *t); // error occurs here
private:
class water{
public:
int litres;
};
};
然而,我得到一个错误说'水'没有被声明。有没有办法进入类而不必把水类放在外面?
在drinkwater
定义之上的私有部分前声明class water;
,如
class cup{
class water;
public:
cup();
void drinkwater(water *t); // error occurs here
private:
class water{
public:
int litres;
};
};
相关文章:
- 如果C++对象的类在另一个boost模块中声明,如何使用boost将指向该对象的指针返回到python
- 从抽象类继承以创建另一个抽象类时,我应该重新声明所有虚函数吗?
- C++ 警告:在一个声明中将截断从双精度初始化为浮点数,但在另一个声明中则不初始化
- C++:为什么允许在另一个函数中声明函数,而不允许在函数定义中声明?
- 在另一个结构中声明内部结构会导致错误:结构使用无效
- 是否可以在引用另一个派生类的派生类中声明复制构造函数?
- 如何将一个变量声明为另一个变量的值
- 使用声明:GCC 和 Clang 的另一个错误?
- 如何在另一个文件的类中声明函数
- GLM如何在不声明内联函数并在另一个(未连接的?)文件中将其定义的函数逃脱
- 为什么我不能在类中另一个函数的声明中使用静态 constexpr 的结果?
- 如何声明另一个类中的枚举
- 从其后声明的另一个成员数据初始化成员数据是否为未定义行为
- 如何在C 中另一个类中声明类的构造函数
- 我如何在类上需要另一个构造函数的对象中声明一个对象
- 我可以使用预处理器将一个类型声明替换为另一个类型声明吗?
- 如何创建一个声明来自另一个类的变量的类
- 如何将 cpp 包含在另一个 cpp 中,例如复制粘贴而不是声明
- 将内部类名声明为另一个声明的一部分
- 添加两个整数,但一个声明为"int",另一个声明为"auto"?