小编Urf*_*fly的帖子

在不同类型的数组上调用item方法

我的任务很简单:我必须创建一个动态数组(这意味着它的大小可以在所有运行时间内更改)并使用不同类型的对象填充它(取决于用户输入,也在运行时).而且,我应该可以访问数组中每个对象的字段(和/或方法).显然,每种类型的字段都不同.简化结构:

public class Point {}
public class RightTriangle:Point { public double sideA, sideB; }
public class Circle:Point { public double radius; }
public class Cone:Circle { public double radius, height; }
Run Code Online (Sandbox Code Playgroud)

所以,你看:所有类都继承了一个基类.我知道,这些结构不合逻辑,但这不是我的选择.所以,我想要这个代码工作:

RightTriangle rt1 = new RightTriangle();
Cone cn1 = new Cone();
List<Point> objs = new List<Point>();
objs.Add(rt1);
sideA_tb.Text = objs[0].sideA.ToString();
Run Code Online (Sandbox Code Playgroud)

但事实并非如此.编译器说,没有sideAPoint.但是,这也不起作用:

public class Point { public double sideA, sideB, radius, height; }
public class RightTriangle:Point { public new double sideA, sideB; }
public class Circle:Point …
Run Code Online (Sandbox Code Playgroud)

c# arrays oop dynamic

5
推荐指数
1
解决办法
145
查看次数

标签 统计

arrays ×1

c# ×1

dynamic ×1

oop ×1