以下のgetFile関数で使用されているように、ByValとByRefの両方のパラメータを持つ関数を記述するのは悪い習慣(VB.NETまたは任意の言語)ですか?ByRefとByValパラメータを同じルーチンで渡すのが悪いのですか?
Function getFile(ByVal channel As Integer, _
ByRef Filename As String, _
ByRef Filesize As String) As Integer
...
End Function
...
Dim status As Integer
Dim filename As String
Dim filesize As Integer
For channel In 1 To 16
status = getFile(channel, filename, filesize)
...
Next channel
このメカニズムが役立つところがわかりますが、最終的にはメソッドの出力が乱雑になります。 整数と(時には)ファイル名/ファイルサイズを返します。私は3つのタイプの情報を持つ単純な構造体を返します。 – Assaf