tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル 配列のByVal、ByRef渡しについて
投稿日: 2007/01/04(Thu) 17:39
投稿者はじめてのプログラミング
VB.NETを始めて、1ヶ月のプログラマーです。

※質問内容
メインルーチンからソートの処理をする部分をサブルーチンへ渡したいのですが、
配列変数「sort」を「ByRef sort() as Integer」とし、サブルーチン側で
配列引数を受け取るときにオートコンプリート機能
(ドットを入力したときにGerUpperBoundとかが自動表示される機能)が
働きません。
ただ、「変数名 = sort.GerUpperBound(変数名)」と全てを記述すると有効になります。

ちなみに、配列変数「sort」を「ByVal sort() as Integer」とサブルーチン側へ
渡すと配列に付随したメッソド一覧が表示されます。

配列をByVal、ByRefで渡したときに上記のような違いがおきるのはなぜでしょうか?

私がいま、使用している参考書に「配列データはByRefによる参照私で行う」と書いてあったので
配列をサブルーチンに渡すときは「ByVal」でなく「ByRef 配列名() as 型」と明示して
あげるように意識した方がいいのかなと思ったのですがこの違いはなんだろうと
疑問に思いました。

纏まりのない文章で申し訳ないのですが、お時間ある方
ご回答をお願いいたします。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。