最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

.NET 中的 常量字段const應(yīng)用介紹

 更新時間:2013年01月10日 11:55:59   作者:  
C#中,當(dāng)使用常數(shù)符號const時,編譯器首先從定義常數(shù)的模塊的元數(shù)據(jù)中找出該符號,并直接取出常數(shù)的值,接下來詳細(xì)介紹,感興趣的朋友可以參考下

C#中,當(dāng)使用常數(shù)符號const時,編譯器首先從定義常數(shù)的模塊的元數(shù)據(jù)中找出該符號,并直接取出常數(shù)的值,然后將之嵌入到編譯后產(chǎn)生的IL代碼中,所以常數(shù)在運行時不需要分配任何內(nèi)存,當(dāng)然也就無法獲取常數(shù)的地址,也無法使用引用了。

如下代碼:

復(fù)制代碼 代碼如下:

public class ConstTest
{
public const int ConstInt = 1000;
}

將其編譯成ConstTest.dll文件,并在如下代碼中引用此ConstTest.dll文件。
復(fù)制代碼 代碼如下:

using System;
class Program
{
public static void Main(string[] args)
{
Console.WriteLine(ConstTest.ConstInt);//結(jié)果輸出為1000;
}
}

編譯運行此Main.exe程序,結(jié)果輸出為1000。之后將bin文件夾中的ConstTest.dll引用文件刪除,直接運行Main.exe文件,程序運行正常,結(jié)果輸出1000。

如果將ConstTest重新定義為:
復(fù)制代碼 代碼如下:

public class ConstTest
{
//只能在定義時聲明
public const int ConstInt = 1000;
public readonly int ReadOnlyInt = 100;
public static int StaticInt = 150;
public ConstTest()
{
ReadOnlyInt = 101;
StaticInt = 151;
}
//static 前面不可加修飾符
static ConstTest()
{
//此處只能初始化static變量
StaticInt = 152;
}
}

重新編譯成ConstTest.dll并向調(diào)用程序Main添加此引用后,再編譯調(diào)用程序,生成新的Main.exe,即使再次刪除ConstTest.dll文件后,Main.exe運行正常,結(jié)果輸出1000。

將Main程序更改如下:
復(fù)制代碼 代碼如下:

class Program
{
public static void Main(string[] args)
{
Console.WriteLine(ConstTest.ConstInt);//輸出1000
Console.WriteLine(ConstTest.StaticInt);//輸出152
ConstTest mc = new ConstTest();
Console.WriteLine(ConstTest.StaticInt);//輸出151
}
}

重新編譯Main程序,如果此時再把ConstTest.dll刪除,則會報錯。

如此可以看出,如果某些工程引用到了ConstTest.dll,如果后來因為變動,改變了ConstInt常量的值,即使引用重新編譯的ConstTest.dll,也無法更改Main.exe中的數(shù)據(jù)(可以把ConstInt值改為其它值,然后將編譯后的ConstTest.dll拷貝到Main.exe的bin文件夾下試試看),這時,只能添加ConstTest.dll引用,并且重新編譯Main程序才行。

相關(guān)文章

  • .NET Core Web APi大文件分片上傳研究實現(xiàn)

    .NET Core Web APi大文件分片上傳研究實現(xiàn)

    這篇文章主要介紹了.NET Core Web APi大文件分片上傳研究實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • asp.net中javascript的引用(直接引入和間接引入)

    asp.net中javascript的引用(直接引入和間接引入)

    Asp.net 中引入Javascript的方法有很多,個人認(rèn)為可以分為直接引入,和間接引入,下面是兩種具體的引用方法,感興趣的朋友可以參考下哈
    2013-06-06
  • LINQ to XML的編程基礎(chǔ)

    LINQ to XML的編程基礎(chǔ)

    本文介紹了LINQ to XML的編程基礎(chǔ),即System.Xml.Linq命名空間中的多個LINQ to XML類,這些類都是LINQ to XML的支持類,它們使得處理xml比使用其他的xml工具容易得多。在本文中,著重介紹的是XElement、XAttribute和XDocument。
    2010-02-02
  • asp.net 參數(shù)不同共用一個頁面的實現(xiàn)方法

    asp.net 參數(shù)不同共用一個頁面的實現(xiàn)方法

    本文為大家介紹下asp.net參數(shù)不同如何共用一個頁面,感興趣的朋友不要錯過
    2013-12-12
  • 仿vs實現(xiàn)WPF好看的進(jìn)度條

    仿vs實現(xiàn)WPF好看的進(jìn)度條

    由于WPF自帶的進(jìn)度條其實不怎么好看,而且沒啥視覺效果。下面給大家分享的是仿VS的進(jìn)度條效果的代碼,有需要的小伙伴可以參考下。
    2015-06-06
  • ASP.NET:把a(bǔ)shx寫到類庫里并在頁面上調(diào)用的具體方法

    ASP.NET:把a(bǔ)shx寫到類庫里并在頁面上調(diào)用的具體方法

    最近在調(diào)整博客的架構(gòu),進(jìn)一步把表現(xiàn)和業(yè)務(wù)分離,所以要把之前用ashx搞的那些Http Handler放到類庫中,下面是具體的步驟及代碼
    2013-06-06
  • Asp.net MVC下使用Bundle合并、壓縮js與css文件詳解

    Asp.net MVC下使用Bundle合并、壓縮js與css文件詳解

    在web優(yōu)化中有一種手段,壓縮js,css文件,減少文件大小,合并js,css文件減少請求次數(shù)。asp.net mvc中為我們提供一種使用c#代碼壓縮合并js和css這類靜態(tài)文件的方法。這篇文章主要介紹了在Asp.net MVC下使用Bundle合并、壓縮js與css文件的方法,需要的朋友可以參考下。
    2017-03-03
  • 使用Lable控件輸出九九乘法表

    使用Lable控件輸出九九乘法表

    這篇文章主要為大家詳細(xì)介紹了使用Lable控件輸出九九乘法表,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • .NET8實現(xiàn)PDF合并的示例代碼

    .NET8實現(xiàn)PDF合并的示例代碼

    這篇文章主要為大家詳細(xì)介紹了如何使用.NET8實現(xiàn)PDF合并的效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-12-12
  • ASP.NET表單驗證方法詳解

    ASP.NET表單驗證方法詳解

    在表單提交的時候,經(jīng)常需要對錄入信息的長度、格式、內(nèi)容等進(jìn)行驗證,以便獲得合理的信息。在ASP.NET開發(fā)中主要的驗證方法,我總結(jié)了一下,主要有一下幾種,如有不足之處請朋友們予以指出。
    2008-09-09

最新評論

湾仔区| 合阳县| 甘洛县| 新余市| 子长县| 邮箱| 东港市| 曲阜市| 定边县| 鸡泽县| 富源县| 尉犁县| 留坝县| 鹤峰县| 丰宁| 余庆县| 化隆| 奉贤区| 开远市| 博乐市| 司法| 都安| 凯里市| 乾安县| 伊宁市| 淮阳县| 敖汉旗| 合江县| 仪征市| 青冈县| 广宁县| 岢岚县| 美姑县| 常熟市| 林甸县| 屯昌县| 南京市| 五莲县| 边坝县| 灵武市| 万安县|