如果我们定义两个C++类.一个是:
abstract class A {
public:
enum E {F, G, H;}
};
Run Code Online (Sandbox Code Playgroud)
另一个是B类,那么我如何在A类中使用枚举E呢?假设B和A都在同一名称空间中.我知道在C#中我们可以使用类似的东西:
A.E
Run Code Online (Sandbox Code Playgroud)
直接,但似乎不是C++的情况.
par*_*mar 10
在C++中,.并且->是用于访问的此特定实例的成员A对象.::用于访问类范围内的事物A.这包括静态,枚举和函数指针.
所以在C++中你想要A::F或者A::G你想要枚举值.
你做的枚举类型 A::E
class A
{
public:
enum E { F , G , H};
virtual ~A() = 0; //a pure virtual function to make the class abstract
};
int main()
{
A::E x; // x is declared as the enum
x = A::F; // x is assigned a particular enum value
return 0;
}
Run Code Online (Sandbox Code Playgroud)
另外,要使类抽象,您需要提供纯虚函数.
| 归档时间: |
|
| 查看次数: |
4015 次 |
| 最近记录: |