Ответ 1
using MyDict = Dictionary<String, String>
, который похож на определение символа, который будет заменен компилятором.
т.е. что-то вроде
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/
Одна проблема заключается в том, что невозможно включить # определение.
использовать наследование:
открытый класс 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" }
}}};
В С# нет эквивалента typedef, однако вы можете использовать "использование" для псевдонимов.
Существует делегат, который используется для определения типа аргумента метода,
существует using BlaBla = Full.Name.Space.Yada.Yada;
однако оператор using действителен только в текущем файле.