投稿日 | : 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になっているのでポインタのポインタを渡す仕様なのでしょうか?
という疑問が沸きます。