c# - 在 C# 中初始化一个属性

标签 c# visual-studio-2008

我有一个构造函数,我正在尝试使用标题 public KsuPoint(double x0, double y0)

构建

现在我在类中也有如下所示的属性

private double x;

    public double X
    {
        get { return x; }

    }

    private double y;

    public double Y
    {
        get { return y; }

    }

这个构造函数假设初始化属性 X 和 Y ...

这是正确的吗?还是我离开了?

public KsuPoint(double x0, double y0)
    {
        new KsuPoint(x0, y0);
    }

最佳答案

构造函数需要将它的参数映射到类的私有(private)字段——你的类应该是这样的:

class KsuPoint
{
    private double x;
    private double y;

    public double X { get { return x; } }
    public double Y { get { return y; } }

    public KsuPoint(double x0, double y0)
    {
        this.x = x0;
        this.y = y0;
    }
}

如果你想更简洁,你可以这样做:

class KsuPoint
{
    public double X { get; private set; }
    public double Y { get; private set; }

    public KsuPoint(double x0, double y0)
    {
        this.X = x0;
        this.Y = y0;
    }
}

关于c# - 在 C# 中初始化一个属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2557321/

相关文章:

c# - 我可以在 EntityFramework 中创建一个带有私有(private) setter 的 poco 类吗

c# - 读取 -> 使用 -> 更新

c# - DataTableReader 对当前 DataTable 'TempTable' 无效

c# - VS2008 View 设计器/ View 代码快捷方式

c++ - 使用 Visual Studio 2008(无 SP1)设计选项卡控件

c# - 为什么 DBSet.Find 越来越慢?

c# - 如何在 C# 中保存并附加到序列化的 MessagePack 二进制文件?

c++ - boost 不可复制的怪异性

visual-studio - 在Visual Studio中,“停止调试”和“全部终止”有什么区别?

c# - 如何将 WPF 数据网格内的文本框数据绑定(bind)到 View 模型中的属性?