在 c# 中是否有等效的 typedef
本文关键字:typedef 是否 | 更新日期: 2023-09-27 17:56:44
即类似
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 定义。
使用继承:
public class DoubleNameValueCollection : Dictionary<string,> { }
然后像 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 语句仅在当前文件中有效。