泛型类与其接口的返回类型不同

时间:2014-11-25 18:30:29

标签: c# generics interface

我想为我的参数值设置泛型类并使用接口方法返回其内容,但是我有一个关于没有匹配返回类型的编译错误。有没有办法来解决这个问题?我的代码如下:

    public class Parameter
    {
        public Parameter(String name, int value)
        {
            this.name = name;
            this.type = eType.typeInt;
            this.parameterValue = new ParameterValueTemplate<int>(value);
        }

        public Parameter(String name, double value)
        {
            this.name = name;
            this.type = eType.typeDouble;
            this.parameterValue = new ParameterValueTemplate<double>(value);
        }

        public interface IParameterValue
        {
            int GetValue();
        }

        class ParameterValueTemplate<T> : IParameterValue
        {
            public ParameterValueTemplate(T value)
            {
                this.value = value;
            }

            public T GetValue()
            {
                return value;
            }

            T value;
        }

        public String name;
        public IParameterValue parameterValue;
    }

1 个答案:

答案 0 :(得分:0)

我以完全不同的方式做到了这一点......! 我希望有一个泛型参数类,里面可以包含不同类型的值,但其余代码已经输入,所以我最终使用了一个存储结构和一个字典来快速参数搜索: - )