VB中傳值引用和傳地址引用是幹什麼用的

2022-01-09 22:16:53 字數 2164 閱讀 8991

1樓:匿名使用者

這個打個比喻很好理解:

比如有a,b兩個變數,將a的值傳給b,b=a如果用傳值引用,那麼後續b的值怎麼改變與a無關如果用傳址引用,那麼後來如果b的值變了,那麼a也跟著變,保持同步

2樓:匿名使用者

sub a(byval x as integer)x=x+1

end sub

sub b(byref x as integer )x=x+1

end sub

上面2個區別看測試**

dim n as integer

n=0a(n)

msgbox n

n=0b(n)

msgbox n

測試結果,byval不會改變n的值,byref 改變了n值。

在vb中傳值呼叫和傳址呼叫的區別?????

3樓:

傳值byval是將數值傳給形參

我以一個例子講解

function add(byval a as integer,byval b as integer)

dim c as integer

a=a+1

b=b+1

c=a+b

add=c

end function

上面的是傳值,也就是當呼叫的時候,例如

add(a,b)

這裡實際上是等同於

add(a值,b值)

如:aa=12:bb=3

呼叫add(aa,bb)時,系統會把數值12和3傳給函式「add」

結果是aa,bb原值未變

但是傳址不一樣

同樣的功能,我把它改成傳址時的模式:

function add(byref a as integer,byref b as integer)

dim c as integer

a=a+1

b=b+1

c=a+b

add=c

end function

這個時候,如果執行下面的程式段:

aa=12:bb=3

add(aa,bb)

print aa & " " & bb

你會發現他們的值變了

因為傳值的時候是將資料給函式,這樣函式無法對aa,bb這種資料進行修改

形象一點:你去查分,別人把分數讀出來給你聽,就相當於傳值

別人把分數表給你看,(這個時候你可以讀取分數,也可以改分數)就是傳址。這就是為什麼查分的時候都是給你的數值,而不是把你放進教育局自己查檔案,嘿嘿

希望對你有幫助

打這麼多字好累,給分吧,嘿嘿

4樓:

傳值的話,在子程式中值改變不會傳遞到主程式。

傳址的話,在子程式中值改變,主程式中也會變。

例子:a=1

b=2call fun(a,b)

sub fun(byref a as integer,byval b as integer)

a=3b=4

end sub

主程式執行完call fun(a,b)後,a=3, b=2

向過程傳遞引數有什麼傳遞和什麼傳遞兩種方法,其中什麼是vb預設的引數傳遞方式?

5樓:匿名使用者

2種,傳值和傳址,下面簡單介紹一下。

byref:預設方式,按地址傳,例如函式a呼叫函式b,按地址傳遞變數c作為引數,傳遞後如b在執行過程中改變c的值,則a中c的值也將改變為b執行後c的值。

byval:按值傳。例如函式a呼叫函式b,按值傳遞變數c作為引數,傳遞後不管b在執行過程中是否改變c的值,a中c的值保持呼叫b之前的值不變

6樓:說啊———喵

在vb中向過程傳遞引數的方法有兩種:按值傳遞和按地址傳遞。

vb在呼叫過程時,通過使用引數傳遞的方式實現呼叫過程與被呼叫過程之間的資料通訊。引數傳遞實際上就是藉助形參(在sub或function定義語句中)和實參(在呼叫程式中)的「結合」來實現。

按值傳遞:1)當實參為常量或表示式時;2)實參是變數時,在形參之前設定關鍵字byval。

按地址傳遞:當實參為變數或陣列時,形參之前設定關鍵字byref(或省略)表示要按地址傳遞。

vb預設的引數傳遞方式是按地址傳遞。

php裡傳值和傳引用有什麼區別,PHP 中傳值與傳引用有什麼區別

傳值 是把實參的值賦值給形參,那麼對形參的修改,不會影響實參的值。傳引用 真正的以地址的方式傳遞引數傳遞以後,形參和實參都是同一個物件,只是他們名字不同而已對形參的修改將影響實參的值。php 中傳值與傳引用有什麼區別 請說明php中傳值與傳引用的區別.什麼時候傳值什麼 傳值,是把來實參的值賦值自給行...

vb6 0關於傳值傳址,在VB中傳值呼叫和傳址呼叫的區別?????

swap1是傳值,所以它內部對x和y做任何修改都不會影響到a和b的值,所以swap1執行完畢後a和b的值是不變的 而swap2是傳址,所以x與a y與b所指向的是同一個記憶體地址,換句話說就是它們實際上是同一個變數,所以函式內部對x和y所做的任何修改都會直接反映到a和b,因此swap2執行完畢後a和...

用凌和傳兩個字造句或者作詩,引用古詩造句

凌空雲淡燕雙飛,傳情幽泉映翠微。萬點沙鷗斜照裡,安寧雅逸不思歸。男兒當有凌雲志。耳邊忽傳雨霖鈴。引用古詩造句 1.在我的苦苦思索下終於有了解題思路,真是山重水複疑無路,柳暗花明又一村呀。2.少壯不努力,老大徒傷悲 我們應該把握時間,好好學習。3.看到黃果樹瀑布,我想到了一句古詩 飛流直下三千尺,疑是...