vb.net CreateObject vs使用New的直接引用

时间:2016-06-23 17:31:31

标签: .net vb.net

我有一个很大的.net解决方案,里面有很多项目。 我的问题是,当从另一个项目引用一个项目时,最好这样做:

Dim objSomething As Project.Class1 = Nothing 
objSomething = CreateObject("Project.Class1") 
...

或者简单地说:

Dim objSomething As New Project.Class1()
...

另外,一个人的性能是否会受到影响? 提前致谢

1 个答案:

答案 0 :(得分:1)

您必须尝试两种方式并对其进行测量才能确定,但​​如果Class是纯COM对象,则不应存在任何显着的性能差异。

除此之外,由于objSomething在两种情况下都被输入Project.Class1所以没有区别,因此之后的所有内容都是早期绑定的。

但是,如果Project.Class1是可以兼容的.NET对象,那么您应该始终使用New,因为您绕过了会对性能产生影响的COM-interop层。通过COM互操作层创建.NET类没有任何意义。