c# 值類型實(shí)例構(gòu)造器
更新時(shí)間:2012年10月29日 13:53:09 作者:
CLR總是允許創(chuàng)建值類型的實(shí)例。另外值類型不一定需要定義構(gòu)造器,c#編譯器不會(huì)為值類型生成默認(rèn)的無參構(gòu)造器
引用類型包含值類型字段,引用類型初始化后,值類型默認(rèn)會(huì)被初始化為0、Null。
CLR允許為值類型定義構(gòu)造器,但是構(gòu)造器的調(diào)用,就必須顯式的寫代碼來調(diào)用它們。
CLR不允許為值類型定義無參構(gòu)造器。只能定義有參構(gòu)造器,并且構(gòu)造器中必須為值類型中的所有字段全部賦值,否則報(bào)錯(cuò)。
c#中雖然沒有無參構(gòu)造器,但是可以使用這個(gè)語法初始化在內(nèi)部的字段:
StructType st = new StructType();//為內(nèi)部字段初始化0或者null
所以對(duì)定義有參構(gòu)造器的參考寫法:
public StructType(int x){ //定義有參構(gòu)造器
this = new StructType();//將所有的字段初始化為0或者Null
m_x = x;//用參數(shù)x覆蓋m_x字段,m_x已被上句話初始化為0
}
CLR允許為值類型定義構(gòu)造器,但是構(gòu)造器的調(diào)用,就必須顯式的寫代碼來調(diào)用它們。
CLR不允許為值類型定義無參構(gòu)造器。只能定義有參構(gòu)造器,并且構(gòu)造器中必須為值類型中的所有字段全部賦值,否則報(bào)錯(cuò)。
c#中雖然沒有無參構(gòu)造器,但是可以使用這個(gè)語法初始化在內(nèi)部的字段:
StructType st = new StructType();//為內(nèi)部字段初始化0或者null
所以對(duì)定義有參構(gòu)造器的參考寫法:
復(fù)制代碼 代碼如下:
public StructType(int x){ //定義有參構(gòu)造器
this = new StructType();//將所有的字段初始化為0或者Null
m_x = x;//用參數(shù)x覆蓋m_x字段,m_x已被上句話初始化為0
}
相關(guān)文章
積累Visual Studio 常用快捷鍵的動(dòng)畫演示
在代碼開發(fā)過程中,頻繁的使用鍵盤、鼠標(biāo)操作非常麻煩,影響程序的開發(fā)效率。如何操作能用鍵盤來操作,那就節(jié)省時(shí)間了。下面小編把我平時(shí)積累的有關(guān)visul studio 常用快捷鍵的動(dòng)畫演示分享給大家,僅供大家參考2015-10-10
關(guān)于C#基礎(chǔ)知識(shí)回顧--反射(三)
在前面例子中,由于MyClass類型的對(duì)象是顯示創(chuàng)建的,因此使用反射技術(shù)來調(diào)用MyClass上的方法沒有任何優(yōu)勢--以普通的方式調(diào)用對(duì)象上的方法會(huì)簡單的多2013-07-07
基于C#實(shí)現(xiàn)文字轉(zhuǎn)語音功能
這篇文章將在C#中集成一個(gè)語音對(duì)象SpeechSynthesizer,可以根據(jù)填入的文字內(nèi)容自動(dòng)解析成語音并使用系統(tǒng)揚(yáng)聲器進(jìn)行語音播報(bào),感興趣的小伙伴可以了解下2025-02-02
解析美國東部時(shí)間與北京時(shí)間相互轉(zhuǎn)換的實(shí)現(xiàn)代碼
本篇文章是對(duì)美國東部時(shí)間與北京時(shí)間相互轉(zhuǎn)換的實(shí)現(xiàn)代碼進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
C#利用IDbDataAdapter/IDataReader實(shí)現(xiàn)通用數(shù)據(jù)集獲取
這篇文章主要為大家詳細(xì)介紹了C#利用IDbDataAdapter/IDataReader實(shí)現(xiàn)通用數(shù)據(jù)集獲取的相關(guān)知識(shí),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-11-11
C#實(shí)現(xiàn)簡單學(xué)生信息管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)簡單學(xué)生信息管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06
C#編程:List.ForEach與foreach循環(huán)的對(duì)比分析
這篇文章主要介紹了C#編程:List.ForEach與foreach循環(huán)的對(duì)比分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03
c# 使用Json.NET實(shí)現(xiàn)json序列化
這篇文章主要介紹了詳解C#中的JSON序列化方法,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下2021-05-05

