gpt4 book ai didi

vb.net - 在 VB.NET 中执行函数而无需先声明类的实例

转载 作者:行者123 更新时间:2023-12-02 11:34:47 25 4
gpt4 key购买 nike

有没有一种方法可以在不先声明变量的情况下对变量的新实例进行函数调用?

例如,在 Java 中你可以这样做:

new foo().bar(parameters);

我在 Visual Basic 中尝试过类似的操作,但这是一个语法错误。目前我正在创建一个变量,然后运行该函数。

dim instance as new foo()
instance.bar(parameters)

我可以做一些与上面的 Java 代码类似的事情吗?

最佳答案

不完全是。您可以通过将实例化放在括号中来在更大的表达式中执行此操作,例如:

MessageBox.Show((New String("y"c, 1)).ToUpper())

或者,事实上,虽然我发现它更令人困惑,但实际上您甚至不需要实例化周围的括号:

MessageBox.Show(New String("y"c, 1).ToUpper())

但是,如果您只想调用这样的方法,我知道的唯一方法就是包装在 CType 运算符中。例如,如果您有这样的类(class):

Private Class Test
Public Sub Show()
MessageBox.Show("Hello")
End Sub
End Class

您可以像这样调用 Show 方法:

CType(New Test(), Test).Show()

但是,这有点笨拙。

事实上,自从我昨天发布这个问题以来,SSS 提供了更好的答案。您可以使用 Call 关键字,而不是将其包装在 CType 运算符中。例如:

Call New Test().Show()

关于vb.net - 在 VB.NET 中执行函数而无需先声明类的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12097518/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com