例如:
variable1=Dir$(some_path)
与
variable1=Dir(some_path)
的区别是什么?
为什么不只是做:
variable1=string(Dir(some_path))
例如:
variable1=Dir$(some_path)
与
variable1=Dir(some_path)
的区别是什么?
为什么不只是做:
variable1=string(Dir(some_path))
* 下面是数据类型 *
末有小抄:
$ : String
% : Integer (Int32)
& : Long (Int64)
! : Single
# : Double
@ : Decimal
开始:
&H : Hex
&O : Octal
我认为$
版本返回String
,非$
版本返回variant
。
http://forums.devarticles.com/microsoft-access-development-49/mid-function-vs-mid-26315.html
为什么不只是做: variable1 = string(Dir(some_path)) – 2010-08-02 16:11:56
美元符号表示字符串将返回而不是一个变体。
为什么不这样做: variable1 = string(Dir(some_path)) – 2010-08-02 16:12:26
为什么当函数为你做这些额外的工作? – LittleBobbyTables 2010-08-02 16:17:30
Dir()返回结果作为变体数据类型。 Dir $()以字符串数据类型的形式返回结果。
有些人使用$版本来达到其声称的效率(因为它仅接受和输出静态类型的变量)。我不知道有多少是静态类型和变量类型之间的速度差,只是基准
那么为什么不测试它,而不是发布一个含糊不清的答案,以确定你是否相信有一个好处(据称),但是然后表明你不知道? :) – brettdj 2013-12-01 00:35:24
@brettdj我知道$版本函数比非美元函数快(接受变量参数),但不知道速度可能会导致数百万次迭代的惊人。我从来没有在循环中做过什么,只是让数据库做了大量的工作,也许如果我是一个组件制造商,我可以欣赏$%&!#@(我不会诅咒大声笑)版本函数的效率。对于某些人来说,这是一种宣称的效率;但对于一些人来说,效率是真实而有形的。以下是一个示例基准http://www.shamrock-software.eu/vb.htm – 2013-12-01 01:13:45
请参阅http://stackoverflow.com/questions/7982220/differentiate-trim-and-trim-in-vba/7988125#7988125 – brettdj 2013-12-01 04:17:06
+ 1有用的cheatlist。 – brettdj 2013-12-01 00:33:18