C#入門之結(jié)構(gòu)類型Struct
概述:
結(jié)構(gòu)類似于類,但結(jié)構(gòu)為值類型,存儲于棧中。
結(jié)構(gòu)不能繼承和被繼承,但可實(shí)現(xiàn)接口。
結(jié)構(gòu)成員訪問級別有public,private(默認(rèn)) ,internal。
1、簡單結(jié)構(gòu)
可以將無方法,屬性等簡單類,聲明為結(jié)構(gòu),提高系統(tǒng)處理效率。
定義結(jié)構(gòu)類型:
struct Pair
{
public int x;
public string y;
}調(diào)用:
Pair p;//只有結(jié)構(gòu)中只存在字段時(shí),new才可以省略。 Pair P1 = new Pair(); p.x = 10; p.y = "a"; Console.WriteLine(p.y);
2、 帶構(gòu)造函數(shù)的結(jié)構(gòu)
結(jié)構(gòu)可以自定義帶參數(shù)的構(gòu)造函數(shù),且必須顯示初始化所有實(shí)例字段。不能顯示創(chuàng)建默認(rèn)構(gòu)造函數(shù)。
void Main()
{
Pair P1 = new Pair(10);
P1.Add(1);
Console.WriteLine(P1.X);
}
struct Pair
{
private int x;//實(shí)例字段不能在聲明時(shí)賦值(即不能初始化)
private static Pair orign = new Pair();//靜態(tài)字段可以在聲明時(shí)賦值
public Pair(int x)//構(gòu)造函數(shù)
{
this.x = x;
}
public int X //結(jié)構(gòu)可以有屬性
{
set { x = value; }
get { return x; }
}
public void Add(int y)//結(jié)構(gòu)也可以有方法
{
x = x + y;
}
}到此這篇關(guān)于C#入門之結(jié)構(gòu)類型Struct的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
unity3D實(shí)現(xiàn)攝像機(jī)抖動(dòng)特效
這篇文章主要為大家詳細(xì)介紹了unity3D實(shí)現(xiàn)攝像機(jī)抖動(dòng)特效,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-01-01
在Unity中實(shí)現(xiàn)動(dòng)畫的正反播放代碼
這篇文章主要介紹了在Unity中實(shí)現(xiàn)動(dòng)畫的正反播放代碼,非常的實(shí)用,這里推薦給大家,希望大家能夠喜歡。2015-03-03
WPF實(shí)現(xiàn)動(dòng)畫效果(一)之基本概念
這篇文章介紹了WPF實(shí)現(xiàn)動(dòng)畫效果之基本概念,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06

