簡體   English   中英

在c#中是否有等效的typedef?

[英]Is there an equivalent to typedef in c#?

即類似的東西

typedef Dictionary<string, string> mydict;

我發誓我已經看到它但找不到它

using MyDict = Dictionary<String, String>就像定義一個將被編譯器替換的符號。

有點。

using IntList = System.Collections.Generic.List<int>;

http://arbel.net/2004/07/07/the-hidden-c-typedef/

一個問題是沒有辦法#include定義。

使用繼承:

公共類DoubleNameValueCollection:Dictionary <string,NameValueCollection> {}

然后使用就好像它是一個typedef:

NameValueCollection values = new NameValueCollection();
values.Add( "value1", "value2" );
DoubleNameValueCollection dblNameCol = new DoubleNameValueCollection();
dblNameCol.Add( "key1", values );

或者如果你想混淆別人:

DoubleNameValueCollection dblNameCol = new DoubleNameValueCollection
    {
        { "key1", new NameValueCollection 
            {
                { "value1", "value2" }
    }}};   

在C#中沒有等效的typedef,但是你可以使用'using'作為別名。

有委托,用於定義一種方法參數,

using BlaBla = Full.Name.Space.Yada.Yada;

但是,using語句僅在當前文件中有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM