真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C#結(jié)構(gòu)體構(gòu)造函數(shù)的實(shí)例分析

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)C#結(jié)構(gòu)體構(gòu)造函數(shù)的實(shí)例分析,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)的關(guān)注點(diǎn)不是能為您做些什么網(wǎng)站,而是怎么做網(wǎng)站,有沒有做好網(wǎng)站,給創(chuàng)新互聯(lián)建站一個(gè)展示的機(jī)會(huì)來證明自己,這并不會(huì)花費(fèi)您太多時(shí)間,或許會(huì)給您帶來新的靈感和驚喜。面向用戶友好,注重用戶體驗(yàn),一切以用戶為中心。

C#結(jié)構(gòu)體構(gòu)造函數(shù)的應(yīng)用是如何的呢?

C#結(jié)構(gòu)體構(gòu)造函數(shù)的實(shí)例1、

    /// ﹤summary﹥      /// 啟動(dòng)服務(wù)端的參數(shù)結(jié)構(gòu)      /// ﹤/summary﹥      public struct SERVER_VIDEOINFO      {    /// ﹤summary﹥    /// 通道數(shù)據(jù)類型,是否支持電話線連接    /// ﹤/summary﹥    byte[] m_datatype;    /// ﹤summary﹥    /// 系統(tǒng)的通道個(gè)數(shù)    /// ﹤/summary﹥    byte m_channum;     /// ﹤summary﹥    /// 超時(shí)等待時(shí)間,1-300,單位:分鐘    /// 用來設(shè)置超時(shí)等待時(shí)間,   ///如果m_waittime沒有收到某個(gè)用戶的應(yīng)答信號(hào),切斷和該用戶的連接。    /// ﹤/summary﹥    uint m_waittime;     /// ﹤summary﹥    /// 目前沒有使用    /// ﹤/summary﹥    uint m_bufnum;    public SERVER_VIDEOINFO(byte channum, uint waittime, uint bufnum)    {  this.m_channum = channum;  this.m_waittime = waittime;  this.m_bufnum = bufnum;  this.m_datatype = new byte[64];    }      };

C#結(jié)構(gòu)體構(gòu)造函數(shù)的實(shí)例2.

    /// ﹤summary﹥      /// 啟動(dòng)服務(wù)端的參數(shù)結(jié)構(gòu)      /// ﹤/summary﹥      public unsafe struct SERVER_VIDEOINFO      {    /// ﹤summary﹥    /// 通道數(shù)據(jù)類型,是否支持電話線連接    /// ﹤/summary﹥    fixed byte m_datatype[64];    /// ﹤summary﹥    /// 系統(tǒng)的通道個(gè)數(shù)    /// ﹤/summary﹥    byte m_channum;     /// ﹤summary﹥    /// 超時(shí)等待時(shí)間,1-300,單位:分鐘    /// 用來設(shè)置超時(shí)等待時(shí)間,   ////如果m_waittime沒有收到某個(gè)用戶的應(yīng)答信號(hào),切斷和該用戶的連接。    /// ﹤/summary﹥    uint m_waittime;     /// ﹤summary﹥    /// 目前沒有使用    /// ﹤/summary﹥    uint m_bufnum;      };  /*  說明:C#中結(jié)構(gòu)都有一個(gè)默認(rèn)的不帶參數(shù)的構(gòu)造函數(shù), 用于對(duì)結(jié)構(gòu)的字段進(jìn)行初始化,并且結(jié)構(gòu)的默認(rèn)構(gòu)造函數(shù)不能被重寫。  結(jié)構(gòu)體之中定義的數(shù)組還可以通過構(gòu)造函數(shù)傳參數(shù)進(jìn)行初始化操作!  1和2的作用相同,但是用2的方式定義的話需要選中 “項(xiàng)目屬性/生成/允許不安全代碼"。  */

C#結(jié)構(gòu)體構(gòu)造函數(shù)的概念來自MSDN的資料:

對(duì)于C#結(jié)構(gòu)體,結(jié)構(gòu)與類共享大多數(shù)相同的語法,但結(jié)構(gòu)比類受到的限制更多:

在結(jié)構(gòu)聲明中,除非字段被聲明為 const 或 static,否則無法初始化。

結(jié)構(gòu)不能聲明默認(rèn)構(gòu)造函數(shù)(沒有參數(shù)的構(gòu)造函數(shù))或析構(gòu)函數(shù)。

由于結(jié)構(gòu)的副本由編譯器自動(dòng)創(chuàng)建和銷毀,因此不需要使用默認(rèn)構(gòu)造函數(shù)和析構(gòu)函數(shù)。實(shí)際上,編譯器通過為所有字段賦予默認(rèn)值(參見默認(rèn)值表(C# 參考))來實(shí)現(xiàn)默認(rèn)構(gòu)造函數(shù)。結(jié)構(gòu)不能從類或其他結(jié)構(gòu)繼承。

結(jié)構(gòu)是值類型。如果從結(jié)構(gòu)創(chuàng)建一個(gè)對(duì)象并將該對(duì)象賦給某個(gè)變量,則該變量包含結(jié)構(gòu)的全部值。復(fù)制包含結(jié)構(gòu)的變量時(shí),將復(fù)制所有數(shù)據(jù),對(duì)新副本所做的任何修改都不會(huì)改變舊副本的數(shù)據(jù)。由于結(jié)構(gòu)不使用引用,因此結(jié)構(gòu)沒有標(biāo)識(shí);無法區(qū)分具有相同數(shù)據(jù)的兩個(gè)值類型實(shí)例。C# 中的所有值類型都繼承自 ValueType,后者繼承自 Object。

C#結(jié)構(gòu)體構(gòu)造函數(shù)的應(yīng)用方面具有以下特點(diǎn):

結(jié)構(gòu)是值類型,而類是引用類型。

與類不同,結(jié)構(gòu)的實(shí)例化可以不使用 new 運(yùn)算符。

結(jié)構(gòu)可以聲明構(gòu)造函數(shù),但它們必須帶參數(shù)。

一個(gè)結(jié)構(gòu)不能從另一個(gè)結(jié)構(gòu)或類繼承,而且不能作為一個(gè)類的基。所有結(jié)構(gòu)都直接繼承自 System.ValueType,后者繼承自 System.Object。

結(jié)構(gòu)可以實(shí)現(xiàn)接口。

結(jié)構(gòu)可用作可為 null 的類型,因而可向其賦 null 值。

上述就是小編為大家分享的C#結(jié)構(gòu)體構(gòu)造函數(shù)的實(shí)例分析了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


分享標(biāo)題:C#結(jié)構(gòu)體構(gòu)造函數(shù)的實(shí)例分析
本文路徑:http://weahome.cn/article/iepddi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部