作了个测试 [CoClass(typeof(TestInterClass))] public interface TestInter { } public class TestInterClass { public TestInterClass() { } }TestInter test = new TestInter(); //wrong
作了个测试 [CoClass(typeof(TestInterClass))] public interface TestInter { } public class TestInterClass { public TestInterClass() { } }TestInter test = new TestInter(); //wrong
coclass就是实现COM接口的实体。你可以理解XX就是该实体,而C#允许该种写法(可能为了兼容老版本)。
public interface TestInter
{ }
public class TestInterClass
{
public TestInterClass()
{ }
}TestInter test = new TestInter(); //wrong
public interface TestInter
{ }
public class TestInterClass
{
public TestInterClass()
{ }
}TestInter test = new TestInter(); //wrong
那是当然的。TestInter光有CoClass Attribute,但是不是COM Stub有什么用?
所谓魔术,就是障眼法。你看着魔术师用手帕一抹,就变出钱来了,那是因为人家本来有钱。你拿着手帕没有钱,怎么能变出钱来呢。