ByVal と ByRefの違いは、参照渡しと値渡しの違いを


みえ  2003-05-10 00:05:32  No: 107048

Byval(値渡し)とByRef(参照渡し)の違いをぜひ教えってください。
あと、VBの標準EXEとActiveX.DLLなどの違いも、もしよければぜひ教えってください。


nanashi  2003-05-10 00:21:13  No: 107049

ByValで受け取った引数はプロシージャ内で変更してもCall元には何も影響は出ませんが、
ByRefで受け取った引数をプロシージャ内で変更するとCall元の値も変更されます。

例えば呼出元が

    Call Sub_Test(A)

となっていて、プロシージャが

    Public Sub Sub_Test(ByVal sData As String)
       sData = "Test"
    End Sub

の時はCall元のAの値は変わりませんが、もしプロシージャが

    Public Sub Sub_Test(ByRef sData As String)
       sData = "Test"
    End Sub

となっていたら Call元のAの値は「Test」という文字列に変更されます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加