自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#靜態(tài)變量使用心得淺析

開發(fā) 后端
C#靜態(tài)變量的使用是我們實(shí)際開發(fā)中比較常見的應(yīng)用,那么C#靜態(tài)變量有什么使用時(shí)需要注意的呢?那么本文就向你介紹C#靜態(tài)變量使用中const和動(dòng)態(tài)變量readonly的區(qū)別。

C#靜態(tài)變量的使用,我們是如何的呢?下面就說一下具體的C#靜態(tài)變量使用心得,對(duì)于在定義常量的時(shí)候,到底是用const來定義還是readonly來定義。在此書中,提到了一個(gè)關(guān)于使用const會(huì)產(chǎn)生潛在的bug。

就是在程序中使用DLL類庫某個(gè)類的靜態(tài)常量時(shí),如果在類庫中修改靜態(tài)常量的值,其它接口沒有發(fā)生變化,一般來說,程序調(diào)用端是不需要重新編譯,直接執(zhí)行就可以調(diào)用新的類庫。不過就是在此情況下,會(huì)產(chǎn)生潛在的bug。這是由于靜態(tài)常量在編譯的時(shí)候,是用它的值去替換常量,因此在調(diào)用端的程序也是這樣進(jìn)行替換的。

C#靜態(tài)變量的使用實(shí)例:

在類庫中定義了一個(gè)靜態(tài)常量,如下:

  1. public const int MAX_VALUE = 10; 

那么對(duì)于程序中調(diào)用此靜態(tài)常量這段代碼,在編譯后產(chǎn)生的中間語言代碼中,是用10來進(jìn)行替換,即使用靜態(tài)常量的地方,改為10了。

那么當(dāng)類庫的靜態(tài)變量發(fā)生變化后,例如:

  1. public const int MAX_VALUE = 15; 

C#靜態(tài)變量的使用的總結(jié):

那么對(duì)于調(diào)用端程序是可以在沒有重新編譯的情況下進(jìn)行運(yùn)行,不過此時(shí)程序的中間語言代碼對(duì)應(yīng)于C#靜態(tài)變量的值是10,而不是新類庫中的15。因此這樣產(chǎn)生的不一致,程序會(huì)引發(fā)潛在的bug。解決此類問題的方法,就是調(diào)用端程序在更新類庫之后重新編譯一下,即生成新的中間語言代碼。

C#靜態(tài)變量的一些使用的心得就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C#靜態(tài)變量的使用有所幫助。

【編輯推薦】

  1. C#語言學(xué)習(xí)階段淺析
  2. C#讀取word文檔實(shí)例淺析
  3. C#讀取Word文檔異常處理解析
  4. C#反射靜態(tài)方法開發(fā)實(shí)例詳解
  5. C#靜態(tài)變量初始化實(shí)例詳解
責(zé)任編輯:仲衡 來源: 博客園
相關(guān)推薦

2009-08-24 17:27:05

C#泛型應(yīng)用

2009-08-27 10:44:21

C#靜態(tài)變量

2009-08-28 10:08:15

C# using語句

2009-08-13 18:10:31

C#靜態(tài)構(gòu)造函數(shù)

2009-08-31 09:47:22

C#靜態(tài)變量初始化

2009-08-31 10:18:00

C#靜態(tài)變量定義C#靜態(tài)變量

2009-10-28 09:47:01

VB.NET局部靜態(tài)變

2009-08-28 11:48:32

C#靜態(tài)函數(shù)

2010-02-01 10:15:07

C++ TinyXML

2011-06-02 14:25:45

靜態(tài)變量

2009-07-31 15:44:02

C#靜態(tài)構(gòu)造函數(shù)

2011-01-19 14:57:09

Thunderbird

2011-08-10 17:16:01

Objective-C靜態(tài)變量

2023-12-29 08:27:36

C語言靜態(tài)變量開發(fā)

2023-10-07 15:53:05

C/C++靜態(tài)變量內(nèi)存

2009-08-28 12:19:19

C#靜態(tài)方法

2009-08-13 18:02:11

C#靜態(tài)構(gòu)造函數(shù)

2009-06-19 11:09:27

Spring AOP

2009-08-14 15:23:10

C#使用ErrorPr

2009-07-31 18:39:31

C#中foreach引
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)