是否可以在 C# 中定义一个引用自身的泛型类型?
例如我想定义一个 Dictionary<> 并将其类型保存为 TValue(对于层次结构)。
Dictionary<string, Dictionary<string, Dictionary<string, [...]>>>
最佳答案
尝试:
class StringToDictionary : Dictionary<string, StringToDictionary> { }
然后你可以这样写:
var stuff = new StringToDictionary
{
{ "Fruit", new StringToDictionary
{
{ "Apple", null },
{ "Banana", null },
{ "Lemon", new StringToDictionary { { "Sharp", null } } }
}
},
};
递归的一般原则:找到一些方法为递归模式命名,以便它可以通过名称引用自身。
关于c# - 递归泛型类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/647533/