VBでDimとNewを同一行に書くと性能が悪くなる?
プログラミングC# p73
こんな記述があります。
VB6では、キーワードDimとNewを同じ行で使うと性能が悪くなりますが、C#ではこの問題が起きません。
なんで性能が悪くなるのだろうか。。
ちなみに、
http://homepage1.nifty.com/rucio/main/shokyu/jugyou23.htm
のサイトにも同様の記述あり。
良く分からんので試しにプログラム書いてみた。VB6じゃなくて、Excel2000 VBAですが。
Sub hoge() MsgBox Now For i = 1 To 100000000 Dim aaa As New Collection Next MsgBox Now End Sub Sub hoge2() MsgBox Now For i = 1 To 100000000 Dim bbb As Collection Set bbb = New Collection Next MsgBox Now End Sub
手元のマシンで実行してみたところ、DimとNewを同一行で書いているhogeサブルーチンの方が、別々に書いているhoge2サブルーチンより速かったりする。
VBじゃなくて、VBAってところがミソなのか?全くもって不明。。
まあ、性能面でも大差なさそうだし、可読性も高いしってことで、僕はDimとNewを同一行で書く派になりました。