【发布时间】:2016-02-15 09:46:13
【问题描述】:
我想知道是否可以在 C# 中创建一个指向基类的类指针。然后,您可以将其设置为任何下级。就像在 C++ 中一样:例如:
class Base
{
virtual void get() = 0;
}
class A : public Base
{
void get();
}
class B : public Base
{
void get();
}
main
{
int i = 0;
Base *base;
if(i==0)
base = new A();
else
base = new B();
}
【问题讨论】:
-
指针在C#中以
unsafe的形式存在,但要“指向”基类,不确定是否有必要 -
get是 c# 中的保留关键字,不要将其用作方法名称您的问题不清楚(对我来说):只需注意只需删除第二行中的*您的 main 将生成正确的 c# 代码 (Base base); -
当然可以,但需要参考。
-
get 仅用于此示例。不在实际代码中。
-
你可以在 C# 中说
Base base = new A();,然后base指的是A的一个实例。你要指针做什么?