VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2004/09/19(Sun) 12:49
投稿者よねKEN
Eメール
URL
タイトルRe: ByRef とByVal

> 例:Public Declare Function hoge Lib "naze.dll" Alias "hage" (ByVal a As Long, ByRef b As String) As Long
> において a をパラメータとして渡し、bの結果を利用する。
> のに、aの値も変わっている。
> 問題は無いのですが・・・気になるもので

この関数の引数の定義(特にAs Long/As Stringの部分)は実際のソースコードとまったく同じですか?
そのDLLのその関数のC言語での定義がわからないとなんとも言えませんが、
この定義であれば、少なくともaに対して渡した変数の値自体が変わることはありえません。
また、bはStringなのにByRefになっているのでポインタのポインタを渡す仕様なのでしょうか?
という疑問が沸きます。


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

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -