偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

C# readonly常量描述

開發(fā) 后端
這里介紹C# readonly常量,初始化工作交由靜態(tài)構造函數(shù)static constructor,完成有關如何把C# readonly常量聲明為類級別或實例對象級別的論述清參見后面的Remark區(qū)域 。

C#語言還是比較常見的東西,這里我們主要介紹C# readonly常量,包括介紹readonly和const都是用來標識常量等方面。

readonly和const都是用來標識常量的。

const可用于修飾class的field或者一個局部變量(local variable);而readonly僅僅用于修飾class的field。

const常量的值必定在編譯時就已明確并且恒定的;而C# readonly常量卻有一點不同,那就是其值可以在運行時編譯,當然,它也必須遵守作為常量的約束,那就是值必須恒定不變。

const常量必須在聲明的同時對其進行賦值,并且確保該值在編譯時可確定并恒定;而C# readonly常量則可以根據(jù)情況選擇在聲明的同時對其賦予一個編譯時確定并恒定的值,或者將其值的初始化工作交給實例構造函數(shù)(instant constructor)完成。如:public readonly string m_Now = DateTime.Now.ToString();,m_Now會隨著運行時實際情況變化而變化。

const常量屬于類級別(class level)而不是實例對象級別(instant object level),并且它不能跟static結合一起使用,該常量的值將由整個類的所有實例對象共同分享(詳細論述參見后面的Remark區(qū)域)。

C# readonly常量既可以是類級別也可以是實例對象級別的,這取決于它的聲明以及初始化工作怎么實施。readonly可以與static結合使用,用于指定該常量屬于類級別,并且把初始化工作交由靜態(tài)構造函數(shù)(static constructor)完成(有關如何把C# readonly常量聲明為類級別或實例對象級別的論述清參見后面的Remark區(qū)域) 。

能被const修飾聲明為常量的類型必須是以下的基元類型(primitive type):sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, float, bool, decimal, string。

object, 數(shù)組(Array)和結構(struct)不能被聲明為const常量。

一般情況下,引用類型是不能被聲明為const常量的,不過有一個例外:string。該引用類型const常量的值可以有兩種情況,string或null。其實,string雖然是引用類型,但是.NET卻對它特別處理,這種處理叫做字符串恒定性(immutable),使得string的值具有只讀特性。

  1. using System;  
  2. public class Order  
  3. {  
  4. public Order()  
  5. {  
  6. Guid guid = Guid.NewGuid();  
  7. ID = guid.ToString("D");  
  8. }  
  9.  
  10. // 對于每一份訂單,其訂單序號都是實時確定的常量。 style="color: #008000;"> 
  11. public readonly string ID;  
  12.  
  13. public override string ToString()  
  14. {  
  15. return "Order ID: " + ID;  
  16. }  

【編輯推薦】

  1. C# lock關鍵字敘述
  2. C#.Net FrameWork簡介
  3. C# new和override簡單描述
  4. C#值類型和引用類型淺談
  5. C#標識符簡單分析
責任編輯:佚名 來源: CSDN論壇
相關推薦

2009-08-13 17:04:09

C#語言C#程序

2009-08-27 10:54:09

C# const和st

2009-08-03 16:45:02

C#異步Socket

2009-08-20 09:30:03

C#開發(fā)WinForm

2009-08-17 16:32:34

C# Anonymou

2009-08-18 17:41:22

C# ListView

2009-08-31 13:18:09

C# IWebMess

2009-08-03 18:08:39

C# ICloneab

2009-08-31 18:32:01

C# ListBoxE

2009-08-19 10:09:21

C#和C++

2009-08-26 17:31:59

C# const常量

2009-08-12 18:28:09

C#事件處理程序

2009-08-27 10:01:52

C#自動屬性

2009-09-01 17:08:35

C# Color枚舉

2009-09-03 16:55:58

C#引用類型

2009-09-07 13:02:52

Java和C#線程

2009-09-07 15:31:49

C#支持事件

2009-08-06 15:52:11

C#調(diào)用外部進程

2009-08-20 16:45:03

C#哈希值

2009-08-21 15:27:11

C# DataGrid
點贊
收藏

51CTO技術棧公眾號