溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#結(jié)構(gòu)體怎么創(chuàng)建

發(fā)布時間:2022-01-21 10:02:13 來源:億速云 閱讀:239 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹了C#結(jié)構(gòu)體怎么創(chuàng)建的相關知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇C#結(jié)構(gòu)體怎么創(chuàng)建文章都會有所收獲,下面我們一起來看看吧。

1、結(jié)構(gòu)體創(chuàng)建

結(jié)構(gòu)體的創(chuàng)建需要使用 struct 關鍵字來聲明,結(jié)構(gòu)體中可以有不同類型的變量:

struct role{
    public string name;
    public int age;
}

雖然結(jié)構(gòu)體和數(shù)組一樣是可以存儲多個值,但是它們的數(shù)據(jù)類型是不同的,數(shù)組是屬于引用類型,而結(jié)構(gòu)體是屬于值類型:

role role1;


... // 筆者懶,就省略了所有賦值的步驟


if(role1 is System.ValueType){
    Console.WriteLine("結(jié)構(gòu)體是值類型");
}
else{
    Console.WriteLine("結(jié)構(gòu)體是引用類型");
}

注意:在這里想要使用 role1,首先保證 role1 里面的所有變量都已經(jīng)賦值。只要有一個沒有賦值,它就會產(chǎn)生報錯。

2、結(jié)構(gòu)體中的其他類型

(1)數(shù)組

結(jié)構(gòu)體里面除了可以聲明變量,同時也可以聲明數(shù)組:

struct role{
    public string[] food;
}


static void Main(string[] args){
    role role1;
    role1.food = new string[]{ "小籠包 ", "菜包", "肉包" };
}
(2)對象

可以聲明對象:

struct role{
    public object obj;
}
static void Main(string[] args){
    role role1;
    role1.obj = 123;
}
(3)類

還可以聲明類:

class c1{
    struct role{
        public c2 c2;
    }
    static void Main(string[] args){
        role role1;
        role1.c2 = new c2();
    }
}


class c2{
    public string name = "xxx";

    
    public void method(){
        Console.WriteLine("成員方法");
    }
}
(4)結(jié)構(gòu)

結(jié)構(gòu)體除了可以聲明許多數(shù)據(jù)類型,結(jié)構(gòu)作為數(shù)據(jù)類型的一種,也是可以被聲明:

struct role{
    public string rname;
    public struct skill{
        public string sname;
    }
}


static void Main(string[] args){
    role role1;
    role1.rname = "喬峰";
    role.skill s1;
    s1.sname = "降龍十八掌";
    Console.WriteLine("{0}正在使用{1}", role1.rname, s1.sname);
    // 喬峰正在使用降龍十八掌
}
(5)方法

除了可以聲明各種數(shù)據(jù)類型,結(jié)構(gòu)體里面還可以聲明方法:

struct role{
    public void sayHello(){
        Console.WriteLine("Hello everyone");
    }
}


static void Main(string[] args){
    role role1;
    role1.sayHello();
}

關于“C#結(jié)構(gòu)體怎么創(chuàng)建”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“C#結(jié)構(gòu)體怎么創(chuàng)建”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI