泛型类作为返回类型
本文关键字:返回类型 泛型类 | 更新日期: 2023-09-27 17:55:20
我有一个使用泛型来保存不同值的存储类。
public class Setting<T>
{
...
}
在另一个类中,我想制作一个类似
public Setting<T> getSetting(string setting)
{
return (Setting<T>)settingDictionary[setting];
}
其中设置字典是
private Dictionary<string, object> settingDictionary;
我收到错误:
找不到类型或命名空间名称"T"(您是否缺少 使用指令或程序集引用?
有没有办法解决这个问题?谢谢
您需要使该方法通用:
public Setting<T> GetSetting<T>(string setting)
{
// ... Your code...
你的Setting<T>
类没有实现Dictionary<string, object>
所以你应该让你的方法generic type
像GetSetting<T>
public Setting<T> GetSetting<T>(string setting)
{
}
这是一个DEMO
.
好吧,编译器不知道" T
"是什么,您可以在方法上将其定义为泛型,如下所示:
public Setting<T> getSetting<T>(string setting)