我想指定一个约束,它是另一种具有通用参数的类型。
class KeyFrame<T>
{
public float Time;
public T Value;
}
// I want any kind of Keyframe to be accepted
class Timeline<T> where T : Keyframe<*>
{
}
但这还不能在 c# 中完成,(我真的怀疑它永远不会)。是否有任何优雅的解决方案,而不必指定关键帧参数的类型?:
class Timeline<TKeyframe, TKeyframeValue>
where TKeyframe : Keyframe<TKeyframeValue>,
{
}