-2

我已获得第 3 方 DLL。

我首先尝试像这样启动对象:

TestClass MyClass = new TestClass();

但是 Visual Studio 告诉我使用界面。

我以前从未这样做过,也不知道从哪里开始。

错误:

类型“MyClass.blabla”没有定义构造函数 无法嵌入互操作类型“MyClass.Subclass”。请改用适用的接口。

4

3 回答 3

2

这很可能是因为您使用的是 COM 类。如果是这种情况,您很可能会想写:

ITest myTest = new TestClass();

COM 包装器经常ITest通过名为TestClass. 但是,在使用 COM 时,您(按设计)通常只针对接口 ( ITest) 编写代码,并且不想直接针对实现编写代码。

于 2013-03-19T15:47:57.733 回答
0

这完全取决于如何TestClass声明。如果 TestClass 是abstract您不能直接创建它的实例,而是必须Derived从 TestClass 的类之一创建实例。

TestClass test = new TestClassDerived();

在哪里

class TestClassDerived : TestClass
{

}
于 2013-03-19T15:45:48.380 回答
0

它可能会为您提供某种初始化方法或作为构造函数传递。您不能以您尝试的方式实例化抽象类或接口(即调用构造函数)

于 2013-03-19T15:46:11.080 回答