gpt4 book ai didi

c# - 如何在 C# 的构造函数中使用重载函数

转载 作者:太空宇宙 更新时间:2023-11-03 21:11:23 26 4
gpt4 key购买 nike

我想根据不同的维度和几何标志创建一个几何体,以确定它是立方体还是圆形。为此,我必须使用重载函数,但我不知道如何在类函数中使用这些函数来存储我的输入。这是我到目前为止所做的:

public void Object( double x, double y, double z)
{
name = "Cube";
a = x;
b = y;
c = z;
}
public void Object(double r, double y)
{
name = "Cylinder";
r1 = r;
b = y;

}

protected double a{ get; private set; }
protected double b{ get; private set; }
protected double c{ get; private set; }
protected double r1{ get; private set; }

我遇到的第一个问题是,我不能多次使用声明的变量,我必须为每个可能的对象声明一个变量,在这种情况下我不能在 b 上保存两个变量,这有点无效。

我的第二个问题是,如果我想像这样调用我的数据类中的对象以及它不起作用的其他值:

public MeasureObject(double hash, string name, new Object obj(int n, different variables), double coordinates, ...)

{
this.Hash = hash;
this.Object=obj;
}

有没有更好的方法在一个对象中实现一个通用几何体,该对象可以采用整数和 n 个不同的维度,无论长度是多少?

最佳答案

几何对象之间有足够的差异,最好有单独的类。

例如,计算每个体积的方法不同。

一个解决方案可能是拥有一个可继承的基类,并拥有一个根据标志确定您需要哪个几何对象实例的工厂类。

关于c# - 如何在 C# 的构造函数中使用重载函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37412494/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com