在VB.Net中,声明字符串的常用方法是:
Dim helloWorld As String = "Hello, World!"
但是,您也可以使用动态变量,例如:
Dim helloWorld = "Hello, World!"
两者最终会成为同一件事,但最佳做法是什么?
答案 0 :(得分:9)
真。 VB位于.Net之上,当你坚持使用显式类型时,.Net效果最好。唯一的例外是Option Infer
打开(现在默认情况下),你也声明类似于C#的var
的变量,或者你正在做COM互操作或其他真正需要动态类型的东西......而且非常罕见。
答案 1 :(得分:8)
回答你的问题what would be the best practice?
当然,最佳做法是将对象声明为它的类型。
如果你不这样做,那么你的代码可能会对语法错误产生负面影响和影响,或者例如在IntelliSense中,有时无法显示对象方法,那么你也不能使用它们(如果你不这样做) t将对象转换为您真正想要的类型)因为在声明时没有在类型之前设置。
不是最好的例子,只是一个例子:
假设您要声明一个数组,并按照以下方式执行:
Dim myArray = {"qwerty"}
但它不被认为是一个数组,所以方法与Array方法不同(好吧,在这个例子中完全没有):
但如果你这样做:
Dim myArray As Array = {"qwerty"}
因此,对于第一种情况,您稍后需要将类型转换为您真正想要使用它的所需类型:
这对于其他许多类型令人困惑的例子都有效,就像我说的不是最好的例子,但我向你展示了一个基本的。
PS:原谅我的英语。答案 2 :(得分:3)
当你查看代码时,把类型放在眼睛上会更安全,但我想有些人会使用它,因为在这么多版本之后它仍然是一个功能。
这是VB。没有区别。编译器让你做各种各样的东西,这就是其中之一
您还可以更改vbproj
中的某些设置,这些设置将允许您在不返回应该返回某些内容的函数中进行编译。
当您传递引用类型参数时,它还允许您使用关键字ByVal
,当您查看代码时,该参数非常不直观。
但仍然..不,你的例子没有区别。
答案 3 :(得分:1)
这取决于你的项目。
如果它是一个包含大量行和类的大项目。然后你应该输入所有变量,因为在编程时你会更容易记住你想要“说”的内容。
无论如何,如果你知道你会多次使用它,那就输入一个从不坏的服装变量。
答案 4 :(得分:1)
此动态变量声明是为了与旧的Office库等兼容,或者在从linq查询返回一些复杂数据类型时更方便。没有用来替换原语。