在C#中有兩種類型的數據,一種是值類型數據,一種是引用類型數據。在編 碼的時候區分這兩種類型數據,可以避免一些細小的編碼錯誤。首先說 說什麼類型是值類型,例如
八、練習6:在報告中添加圖表和摘要信息說明 至此,你已經 擁有一個全功能的網站,它將顯示一個基於一個對象集合的水晶報表。該站點將 顯示以編程方式輸入到一個對象
.Net有四個判等函數?不少人看到這個標題,會對此感到懷疑。事實上確是 如此,.Net提供了ReferenceEquals、靜態Equals,具體類型的Equ
這是因為在此函數中要用到具體類型的兩個判等函數 ,不過就函數本身而言,該做的判斷都做了,因此不需要去重載添加復雜的操作 。為了更好的述說剩下兩個函數,先解釋一
這部分,這是由於子類對象可以通過as轉化成基類對象,從而造 成不同類型對象可以進行判等操作,違反了等價關系。除此外對於類型 的Equals函數來,其實並沒有限
為了方便內容的開展,我先說說一個對象的構造過程。對於類型第一 個實例的構造過程大致如下:1.分配靜態成員的內存空間,此時空間存 儲數據為0;2.執行靜態成員的
實,這樣操作會產生過多裝箱和拆箱操 作。那麼更好的方法,可以通過接口來完成,從而減少裝箱和拆箱操作。對於這 個例子的接口實現應該如下。public inter
ECMA標准是C#語言所有功能的官方說明。ECMA-334定義了C#語言1.0的標准, 你可以從The C# Programming Language這本書上
C#2.0,在2005年已經可以使用了,它有一些主要的新功能。這樣使得目前使 用的一些最好的實際經驗可能會有所改變,這也會隨著下一代工具的發布而修改 。盡管目
這些代碼在集合中存儲System.Object的引用,任何時候你都 可以使用它,在你訪問集合是,你必須添加強制轉換。但使用C#范型,你可以這 樣定義同樣的類:
在這一方面上,C#2.0用yIEld關鍵字添加了新 的語法,這讓在寫這些迭代時變得更清楚。對於前面的代碼,在C#2.0裡可是樣 的:public class
對於C#以及.Net來說這是激動人心的時候。這些工具目前還是比較新的,整 個社區都在學習如何使用這些工具。一些資源可以幫助你提高你的知識,以及為 .Net和C
ILDasm是一個IL反匯編器,在本書不同的地方,我已經演示了一些IL 代碼,它們就是編譯器為不同的C#結構生成的。盡管我不相信很多人會在有高級 語言存在的情
讀操作也是完全和其它使用文件I/O相似的:IsolatedStorageFile isoStore = IsolatedStorageFile.GetUse
在開發設計.Net時,MS所做的最聰明的修改之一就是他們意識到,如果沒有 辦法整合已經存在的代碼到新的.Net環境中,那沒沒有人會接受這個新的平台。 MS知道
當你在托管代碼和非托管代碼之間,只使用blittable 類型 時,你就最小化了多少必須拷貝的信息呀!你同樣也優化了任何必須發生的拷貝 操作。如果在數據拷貝時
即使是在重寫少數幾個方法之後,你很快就明白這不 是一個高產的方法來提供交互功能。簡單的說,使用P/Invoke只能訪問C風格的 Win32方法(在開發上要開銷