我收到了第三方DLL。
我首先尝试启动这样的对象:
TestClass MyClass = new TestClass();
但Visual Studio告诉我使用界面。
我以前从未这样做过,也不知道从哪里开始。
错误:
Type'MyClass.blabla'没有构造函数定义的Interope类型 'MyClass.Subclass'无法嵌入。使用适用的界面 代替。
答案 0 :(得分:2)
这可能是因为您正在使用COM类。如果是这种情况,你很可能想写:
ITest myTest = new TestClass();
COM包装器经常通过名为ITest
的CoClass公开TestClass
接口。但是,在使用COM时,您(通过设计)通常只针对接口(ITest
)进行编写,并且不希望直接针对实现进行编写。
答案 1 :(得分:0)
完全取决于TestClass
的声明方式。如果TestClass为abstract
,则无法直接创建其实例,而是必须从TestClass中的一个类Derived
创建实例。
TestClass test = new TestClassDerived();
其中
class TestClassDerived : TestClass
{
}
答案 2 :(得分:0)
它可能会为您提供某种初始化方法或作为构造函数传递。您无法以您尝试的方式实例化抽象类或接口(即调用构造函数)