C# 结构,使用方法处理 Bool 类型?

标签 c# struct

我认为我知道如何处理结构,因为我已经用 C 编程多年了。但是,我在试图理解的 C# 程序中遇到了这个结构定义。它由 bool 值填充,并且该结构的每个实例都将成为数组中的一个单元格(此处未显示)。我希望第 3 行中的覆盖用于覆盖基类中的方法“ToString()”。

public struct Cell
    {
        public bool occupied;

        public Cell(bool occupied) { this.occupied = occupied; }

        public override string ToString() { return occupied ? "x" : "."; }
    }

我理解上面的第一行。我相信我对结构中方法的使用感到困惑,因为我假设上面结构定义中的第二行和第三行是方法。第二行让我很困惑。

谢谢 汤姆

最佳答案

结构中的第二行是结构的构造函数(是的,它基本上是一个方法),它将 bool 值作为参数并将传入的值分配给“占用”字段。

第三行是对 ToString 方法的重写,它被所有东西继承,因为它是 Object 类的内置方法,而 Object 类是 C# 中存在的所有其他对象的父类(super class)。默认情况下,它只输出完全限定的类/结构名称。

关于C# 结构,使用方法处理 Bool 类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35244021/

相关文章:

c# - 非嵌入资源js文件可以访问资源文件(.resx)吗?

c# - WebAPI 中的文件上传

c - C 中时间结构所需的帮助

c - 是否可以通过成员地址访问超过结构的大小,并分配足够的空间?

c - 在 AVR 中将结构体设置为数组

c# - 如何使用 ReadProcessMemory 获取托盘按钮文本

c# - 程序集.CreateInstance() : how to enforce Interface implementation

c# - 为什么 "throw ex;"隐藏原始堆栈跟踪

go - 从函数类型获取结构

c++ - 在多重集中查找结构的语法 - C++