我已经看过很多示例c#泛型代码,并且记得看到一个为长泛型字典类型创建替代速记类型的语法声明技巧。混合使用C#和C++是一样的东西:长泛型集合类型的速记声明
typedef MyIndex as Dictionary< MyKey, MyClass>;
这然后允许以下用法:
class Foo
{
MyIndex _classCache = new MyIndex();
}
可有人提醒我这C#lanaguage功能支持呢?
我已经看过很多示例c#泛型代码,并且记得看到一个为长泛型字典类型创建替代速记类型的语法声明技巧。混合使用C#和C++是一样的东西:长泛型集合类型的速记声明
typedef MyIndex as Dictionary< MyKey, MyClass>;
这然后允许以下用法:
class Foo
{
MyIndex _classCache = new MyIndex();
}
可有人提醒我这C#lanaguage功能支持呢?
就是这样,using directive的另一种形式,用于定义一个别名。
using MyClass = System.Collections.Generic.Dictionary<string, int>;
namespace MyClassExample
{
class Program
{
static void Main(string[] args)
{
var instanceOfDictionaryStringInt = new MyClass();
}
}
}
using MyIndex = Dictionary<MyKey, MyClass>;
下面是它如何做
using Test = System.Collections.Generic.Dictionary<int, string>;
namespace TestConsole
{
class Program
{
static void Main(string[] args)
{
Test myDictionary = new Test();
myDictionary.Add(1, "One");
}
}
}
哇一个例子,这是我只是不会做。出于某种原因,C#没有宏。 – 2010-09-05 13:32:28