日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

枚举和结构

發布時間:2023/12/20 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 枚举和结构 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.? 枚舉

    a)??? 枚舉類型是一種特殊的值類型,它用于聲明一組具有相同性質的常量,

    b)??? 聲明枚舉

    在C#中使用關鍵字enum類聲明枚舉,其形式如下。

enum? 枚舉名

{

???? List1=value1,

???? List2=value2,

???? List3=value3,

??? ….

???? ListN=valueN;

}

?

    其中,大括號{}的內容為枚舉值列表,每個枚舉值均對應一個枚舉值名稱,value1~valueN為整數數據類型,List1~ListN則為枚舉值的標識名稱。

如果枚舉沒有初始化, 即省掉"=整型常數"時, 則從第一個標識符開始, 順次賦給標識符0, 1, 2, ...。但當枚舉中的某個成員賦值后, 其后的成員按依次加1的規則確定其值。

  c)??? 枚舉成員訪問

    你可以在任何需要使用符號常量的位置使用枚舉類型, 但是如果你想得到枚舉類型所代表的整型值就得對其轉型,語法:

          枚舉名.成員名

          (int)枚舉名.成員名

2.? 結構

    結構是C#程序員用來定義自己的值類型的最普遍的機制。結構比枚舉更強大,因為它提供函數、字段、構造函數、操作符和訪問控制。結構類型也是先聲明后使用。聲明結構類型時要使用struct關鍵字

    A)? 定義結構

          語法: struct? 結構名 { //結構成員定義 }

          例子:struct MyCat

??            ? {???

              public int age;

????            ??? public string name;

??            ? }

    B)? 結構成員

          結構成員可分為兩類,一是實例成員,一是靜態成員。靜態成員通過結構名來訪問,而實例成員的訪問是通過創建結構類型的變量來訪問結構的實例成? ?         員。結構的構造函數必須帶參數

結構名? 變量名;

3.? 結構和枚舉的區別:

  1)結構中的成員可以賦值;枚舉是取值,只讀的   2)結構是跟類很相似的一種數據結構;而枚舉是一個有限的整數序列   3)結構是值類型,當顯示的定義帶參的構造函數時,默認的無參構造函數依然存在,結構不能繼承,但可實現接口;
而枚舉也是值類型,它是一組已命名的數值常量,它有助于定義具有一組特定值的數據類型,主要總結為 :確定并有限,不會出現非安全值。   4)定義結構的關鍵字是:static ;定義枚舉的關鍵字是:enum

4.類和結構的區別:

    1)??? 結構屬于值類型,結構的值是直接存儲在棧空間中的;

? ? ? ? ? ? ? ? ? ? ?類屬于引用類型,類的值是存儲在托管堆中,在棧空間中保存指向該托管堆的內存地址。

    2)??? 結構當顯示的定義帶參的構造函數時,默認的無參構造函數依然存在;

?    ? ??? 類當顯示的定義帶參的構造函數時,默認的無參構造函數就不存在了

    3)??? 結構不能繼承,但可實現接口;類可以繼承,也可以實現接口。

    4)??? 結構的關鍵字:static;類的關鍵字是class

?

轉載于:https://www.cnblogs.com/slwx1514/p/10030443.html

總結

以上是生活随笔為你收集整理的枚举和结构的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。