【问题标题】:Is there a way to perform a type specific action in a generic class? [closed]有没有办法在泛型类中执行特定类型的操作? [关闭]
【发布时间】:2019-08-13 06:57:57
【问题描述】:
class Class1<T>
{
    T Value;

    void Method1()
    {
        if(Value is int)
            Value = 42;//CS0029
    }
}

有没有办法让这样的代码工作?

【问题讨论】:

  • 如果需要,为什么要使用泛型?
  • @Magnus 这是我的代码的简化版本,只是为了显示问题。
  • 你要解决什么任务?
  • 问题不清楚,您对要达到的目标的意图尚不清楚。是主要方法命名不当还是您要修改启动类,如果是这样,为什么...它将实现什么。此示例代码中的任何内容都没有任何意义,请添加一些详细信息,说明您尝试执行的原因和内容。你能做这个工作吗......因为它不是,作为什么工作,没有和理解你正在尝试的东西没有人能够帮助你。

标签: c# generics


【解决方案1】:

这是可能的,但如果您需要在泛型类中执行此操作,通常代码会出现问题。

if (Value is int)
   Value = (T)(object)42;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-15
    • 1970-01-01
    • 1970-01-01
    • 2022-06-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多