在C#
我可以这样做:
new SomeObjectType("abc", 10);
换句话说,我可以在不将创建的实例分配给任何变量的情况下调用new。但是,在VB.Net
中,我似乎无法做同样的事情。
New SomeObjectType("abc", 10) ' syntax error
有没有办法在VB.Net
中执行此操作?
答案 0 :(得分:2)
以下适用于Mono VB编译器(vbnc
,版本0.0.0.5914,Mono 2.4.2 - r):
Call New SomeObjectType("abc", 10)
注意所需的Call
。
答案 1 :(得分:1)
答案 2 :(得分:0)
这应该是正确的语法,例如
Dim name As New String
Dim url As New Uri("http://www.somedomain.com")
你有更多的代码可以解决这个问题吗?
答案 3 :(得分:0)
可以定义一个Sub来丢弃构造的对象:
Sub gobble(dummy As Object)
End Sub
然后按如下方式调用构造函数:
gobble(New SomeClass())
当我在构造函数中测试异常时,我在测试中使用此方法。我在lambda中构造对象并将该lambda传递给检查Exception的函数。适合在一条线上。
assertThrows(Of ArgumentOutOfRangeException)(Sub() gobble(New ClassUnderTest("stuff")))