新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C#別名指示符學(xué)習(xí)經(jīng)驗
C#語言有很多值得學(xué)習(xí)的地方,這里我們主要介紹C#別名指示符,包括介紹C#別名指示符在所有命名空間最外層定義等方面。

創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營銷推廣、網(wǎng)站重做改版、全州網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁面制作、商城建設(shè)、集團公司官網(wǎng)建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為全州等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
C#別名指示符是什么?
通過C#別名指示符我們可以為某個類型起一個別名,主要用于解決兩個命名空間內(nèi)有同名類型的沖突或避免使用冗余的命名空間,C#別名指示符在所有命名空間最外層定義,作用域為整個單元文件。如果定義在某個命名空間內(nèi),那么它只在直接隸屬的命名空間內(nèi)起作用。
示例:
- Class1.cs:
- using System;
- using System.Collections.Generic;
- using System.Text;
- namespace com.nblogs.reonlyrun.CSharp25QExample.Example19.Lib01
- {
- class Class1
- {
- public override string ToString()
- {
- return "com.nblogs.reonlyrun.CSharp25QExample.Example19.Lib01's Class1";
- }
- }
- }
- Class2.cs:
- using System;
- using System.Collections.Generic;
- using System.Text;
- namespace com.nblogs.reonlyrun.CSharp25QExample.Example19.Lib02
- {
- class Class1
- {
- public override string ToString()
- {
- return "com.nblogs.reonlyrun.CSharp25QExample.Example19.Lib02's Class1";
- }
- }
- }
- 主單元(Program.cs):
- using System;
- using System.Collections.Generic;
- using System.Text;
- //使用別名指示符解決同名類型的沖突
- //在所有命名空間最外層定義,作用域為整個單元文件
- using Lib01Class1 = com.nblogs.reonlyrun.CSharp25QExample.Example19.Lib01.Class1;
- using Lib02Class2 = com.nblogs.reonlyrun.CSharp25QExample.Example19.Lib02.Class1;
- namespace Example19
- {
- namespace Test1
- {
- //Test1Class1在Test1命名空間內(nèi)定義,作用域僅在Test1之內(nèi)
- using Test1Class1 = com.nblogs.reonlyrun.CSharp25QExample.Example19.Lib01.Class1;
- class Class1
- {
- //Lib01Class1和Lib02Class2在這可以正常使用
- Lib01Class1 tmpObj1 = new Lib01Class1();
- Lib02Class2 tmpObj2 = new Lib02Class2();
- //TestClass1在這可以正常使用
- Test1Class1 tmpObj3 = new Test1Class1();
- }
- }
- namespace Test2
- {
- using Test1Class2 = com.nblogs.reonlyrun.CSharp25QExample.Example19.Lib01.Class1;
- class Program
- {
- static void Main(string[] args)
- {
- //Lib01Class1和Lib02Class2在這可以正常使用
- Lib01Class1 tmpObj1 = new Lib01Class1();
- Lib02Class2 tmpObj2 = new Lib02Class2();
- //注意這里,TestClass1在這不可以正常使用。
- //因為,在Test2命名空間內(nèi)不能使用Test1命名空間定義的別名
- //Test1Class1 tmpObj3 = new Test1Class1();
- //TestClass2在這可以正常使用
- Test1Class2 tmpObj3 = new Test1Class2();
- Console.WriteLine(tmpObj1);
- Console.WriteLine(tmpObj2);
- Console.WriteLine(tmpObj3);
- Console.ReadLine();
- }
- }
- }
- }
文章標(biāo)題:C#別名指示符學(xué)習(xí)經(jīng)驗
網(wǎng)站網(wǎng)址:http://www.5511xx.com/article/dpeoppc.html


咨詢
建站咨詢
