1

我正在尝试使用静态库重用一些 c++ 代码。例如,如果这是我在静态库中的 c++ 类。

class testclass
{
   testclass();
   ~testclass();
   void printsomethig();
   void dosomething();
};

现在我想在我的运行时项目中继承这个类,稍后我想从我的 windows phone 8 c# 项目中调用它,但问题是本地类不能是公共的,如果它是我看不到方法和函数不公开。例如:

public class runtimeTestClass : testclass
{
   runtimeTestClass();
   ~runtimeTestClass();
};

问题是在运行时 native 不能是公共的(错误消息),必须是

public ref runtimeTestClass sealed
{
    runtimeTestClass();
   ~runtimeTestClass();
};

但这样我就不能继承任何东西。

有谁知道我怎么能解决这个问题?

先感谢您

4

1 回答 1

0

如果我是你,我会选择围绕你现有的类创建一个 WinRT 包装器,而不是使用继承。

如果您将runtimeTestClassWinRT 类的所有功能委托给您的私有实例,testclass那么您将能够从 c# 中使用它。

于 2014-04-01T21:08:36.227 回答