配列(サイズ不定)を返す関数の定義を

(1)
Public|Private Function Hoge() As Type()
と書くのと、

(2)
Public|Private Function Hoge(ByRef vntArray As Variant) [As RetVal]
'VariantのByRef引数に配列を割り当てて返す。

と書くのと、どちらが正統(正しい作法)ですか?
どちらも動作には問題ないようですが、(1)の形式のコードは見たことがないので、
邪道なのか気になります。