我只想确认一件事:您是否必须有一个没有参数的构造函数才能让 .NET 程序集像普通 COM 组件一样被调用(使用 Win32::OLE -> new())?如果 dll 没有具有此类构造函数的可组合类,您将无法通过 Win32::OLE -> new() 调用它。
问问题
495 次
1 回答
2
是的。你需要一个public
anddefault
构造函数。http://msdn.microsoft.com/en-AU/library/ms182203(v=vs.80).aspx
如果您的类没有任何公共构造函数,那么您不需要创建一个,因为会自动为您添加公共默认构造函数:http: //msdn.microsoft.com/en-us/library/aa645608(v=vs. 71).aspx即:
这个:
class Message
{
object sender;
string text;
}
等同于:
class Message
{
object sender;
string text;
public Message(): base() {}
}
但是,如果您有一个带有一些参数的构造函数,那么您必须手动提供一个公共默认构造函数。
于 2013-05-24T00:48:23.577 回答