我想从Microsoft.Kinect.JointCollection类派生一个类。

public class Derived : JointCollection
{
    public string NewItem;

    public Derived ()
    {

    }
}


错误:

The type 'Microsoft.Kinect.JointCollection' has no constructors defined.


有什么问题,我该如何解决?

最佳答案

基类对象总是在任何派生类之前构造的。
  因此,基类的构造函数在
  派生类的构造函数。


http://msdn.microsoft.com/en-us/library/ms228387%28v=VS.80%29.aspx

Microsoft.Kinect.JointCollection类不包含公共构造函数[2],因此,每当您尝试实例化Derived时,它都会失败,因为公共构造函数在基类上不可用。

您可以考虑将JointCollection类与派生类一起包装,并提供适当的方法在Derived中对其进行访问,这些方法仅比直接在JointCollection上调用方法起作用。

07-26 09:01