创建嵌套的泛型类型并将其分配给变量

时间:2012-09-21 16:56:12

标签: c# generics nested nested-generics

这里我创建了Pair<Pair <int, int>, String>类型的变量约会我想创建一个这种类型的值并将其分配给约会。

有人能帮帮我吗?  我是C#和编程新手。

Pair< Pair<int, int>, String> appointment = new Pair<Pair<int,int>,String>; 

2 个答案:

答案 0 :(得分:3)

假设Pair有一个带有两个参数的构造函数

Pair<Pair<int,int>,string> appointment = new Pair<Pair<int,int>,string>(
    new Pair<int,int>(x, y),
    "hello"
);

或更简洁

var appointment = new Pair<Pair<int,int>,string>(
    new Pair<int,int>(x, y),
    "hello"
);

或使用对象初始值设定项(假设Pair有两个名为Arg1Arg2的属性)

var appointment = new Pair<Pair<int,int>,string> {
    Arg1 = new Pair<int,int> { Arg1 = x, Arg2 = y),
    Arg2 = "hello"
};

或者如果您想创建一个空的Pair

var appointment = new Pair<Pair<int,int>,string>();

答案 1 :(得分:0)

假设Pair类具有公共setter的以下公共属性:

public Pair<T, T> Nested { get; set; }

public string Name { get; set ; }

然后你也可以这样做:

var appoinment = new Pair<Pair<int,int>,string>
{
     Nested = new Pair<int,int>(1, 2),   
     Name = "Eric"
};