C#(99):结构类型:Struct

一、概述:

结构类似于类,但结构为值类型,存储于栈中。

结构不能继承和被继承,但可实现接口。

结构成员访问级别有public,private(默认) ,internal。

1、简单结构

可以将无方法,属性等简单类,声明为结构,提高系统处理效率。

定义结构类型:

struct Pair
{
    public int x;
    public string y;
}

调用:

Pair p;//只有结构中只存在字段时,new才可以省略。
Pair P1 = new Pair();
p.x = 10;
p.y = "a";
Console.WriteLine(p.y);

2、 带构造函数的结构

结构可以自定义带参数的构造函数,且必须显示初始化所有实例字段。不能显示创建默认构造函数。

void Main()
{
    Pair P1 = new Pair(10);
    P1.Add(1);
    Console.WriteLine(P1.X);
}

struct Pair
{
    private int x;//实例字段不能在声明时赋值(即不能初始化)
    private static Pair orign = new Pair();//静态字段可以在声明时赋值

    public Pair(int x)//构造函数
    {
        this.x = x;
    }
    public int X //结构可以有属性
    {
        set { x = value; }
        get { return x; }
    }
    public void Add(int y)//结构也可以有方法
    {
        x = x + y;
    }
}
原文地址:https://www.cnblogs.com/springsnow/p/9428488.html