【发布时间】:2020-12-02 18:49:06
【问题描述】:
我想给一个带有类型参数的对象添加一个组件,但它说不能这样使用:
void AddScript<T>(GameObject self)
{
self.AddComponent<T>();
}
我尝试寻找解决方案,但只找到了将一个对象转换为另一个对象的方法。我也尝试过拳击转换,就像它说的那样:
void AddScript<T>(GameObject self)
{
self.AddComponent<[Component]T>();
}
但是编译器说它是一个类型,它是无效的。
那么如何将一种类型转换为另一种类型呢?
【问题讨论】:
-
这个方法中
T有什么用? -
试试
void AddScript<T>(GameObject self) where T : UnityEngine.Component