模板结构中的模板结构

时间:2012-06-03 10:00:57

标签: c# struct

我有一个看起来像这样的结构:

public struct Pair<T,U> {
    public readonly T Fst;
    public readonly U Snd;

    public Pair(T fst, U snd) {
        this.Fst = fst;
        this.Snd = snd;
    }

    public override String ToString() {
        return "(" + Fst +", " + Snd + ")";
    }
}

现在我需要声明类型Pair<Pair<int,int>, String>的变量“约会”。

  1. 如何初始化它?
  2. 如何访问appointment.Fst.Snd? (其类型应为int)

2 个答案:

答案 0 :(得分:2)

我不确定是否明白问题所在。这不行吗?

Pair<Pair<int, int>, string> s = new Pair<Pair<int, int>, string>(new Pair<int, int>(5, 10), "hello");
 Console.WriteLine(s.Fst.Snd);

答案 1 :(得分:0)

初始化可以像这样进行

Pair<Pair<int, int>, String> appt = new Pair<Pair<int, int>, string>(new Pair<int,int>(1,3),"test");

然后你可以访问:

appt.Fst; // type pair<int,int>
appt.Snd; // type string
appt.Fst.Snd; // type int