-1

我是 C# 的初学者。我有一个名为的类config,其中有一个名为kye.

当我应用GET类的属性时,该属性必须返回一个kye不同类型(IntboolString)的变量。

我需要在操作员的帮助下实现这一点enum。知道我该怎么做吗?

4

2 回答 2

1

据我所知,语言中没有内置这样的东西,所以你必须手动完成。一种直接的方法是:

public object GetKye(KyeType type)
{
    switch (type)
    {
        case KyeType.String:
            return this.kye;
        case KyeType.Int32:
            return Int32.Parse(this.kye);
        case KyeType.Bool:
            return this.kye.ToLower().Equals("true");
    }
    return null;
}
于 2012-07-15T08:17:07.693 回答
1

这消除了在代码中进行强制转换的需要,但并不安全。它需要大量的错误处理。

public T Kye<T>(KyeEnum Key)
{
    return (T)kye;
}

或者这就是你所追求的:

public Tuple<int, bool, string> Kye(KyeEnum Key)
{
    return new Tuple<int, bool, string>(nKye, bKye, sKye);
}
于 2012-07-15T08:22:02.910 回答