У меня есть проблема приведения, которую я не могу решить:
в функции инициализации ClassA, я хочу передать 'this' в качестве параметра, но компилятор не может привести от ClassA<T, U>
к ClassA<ClassB<U>, U>
, зная, что они одинаковы (where T : ClassB<U>
).
public class ClassA<T, U> : MonoBehaviour where T : ClassB<U>
{
public void initialize()
{
T item =...
item.Initialize(this); // Cannot implicitly convert from ClassA<T, U> to ClassA<ClassB<U>, U>.
}
}
public class ClassB<T> : MonoBehaviour
{
public virtual void Initialize(ClassA<ClassB<T>, T> mgr, T data)
{
...
}
}
Спасибо.