国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
VBA代碼在運行過程中,實際參數(shù)的值如何傳遞給形式參數(shù)

大家好,我們今日繼續(xù)講解VBA代碼解決方案的第124講內(nèi)容:VBA程序執(zhí)行過程中,參數(shù)的傳遞形式。在代碼的編寫過程中,為了深入的理解代碼,有時候要對一些理論的知識必須要做必要的深入了解。我將在這節(jié)和下階內(nèi)容中著重講解程序在運行時參數(shù)是如何傳遞的。理論的成分多些,但還是希望朋友們能好好掌握。

首先,我們先來理解一下幾個定義:什么是形式參數(shù),什么是實際參數(shù),什么是參數(shù)的傳遞,參數(shù)傳遞有幾種形式。

1形式參數(shù) 指出現(xiàn)在Sub 和Function過程中的變量名、數(shù)組名。該過程在被調(diào)用前,沒有為它們分配內(nèi)存,其作用是說明自變量的類型和形態(tài)以及在過程中的作用。形參可以是變量名,也可以是數(shù)組名。

2 實際參數(shù):就是在調(diào)用Sub 和Function過程時,從主調(diào)過程傳遞給被調(diào)用過程的參數(shù)值。實參可以是變量名、數(shù)組名、常數(shù)或表達式。在過程調(diào)用傳遞參數(shù)時,形參與實參是按位置結(jié)合的,形參表和實參表中對應的變量名可以不必相同,但它們的數(shù)據(jù)類型、參數(shù)個數(shù)及位置必須一一對應。

3 參數(shù)的傳遞:在程序運行過程中,實際參數(shù)將參數(shù)值傳遞給相應的形式參數(shù),然后在函數(shù)中實現(xiàn)數(shù)據(jù)處理和返回的過程。

4 參數(shù)的傳遞有兩種:按值傳遞和按地址傳遞

① 按值傳遞:在過程被調(diào)用時,傳遞給形參的是調(diào)用過程中的相應實參的值,形參與實參各占有不同位置的儲存空間,被調(diào)用過程在執(zhí)行過程中,改變了形參變量的值,但不會調(diào)用過程的實參值。在函數(shù)聲明行在參數(shù)名稱之前加上關(guān)鍵字ByVal。

② 按地址傳遞:就是當調(diào)用一個過程時,是把實參變量的內(nèi)存地址(指針)傳遞給被調(diào)用過程的形參,也就是說形參與實參使用相同地址的內(nèi)存單元。因此當在被調(diào)用過程中改變形參的值,就等于改變了實參的值。

上面的幾個定義或許你不是很理解,下面我們看一個實例:

Sub MynzNumbers()

Dim a As Integer, b As Integer, c As Integer

a = 10

b = 20

c = 30

MsgBox MyAverage(a, b, c) & ' ' & a & ' ' & b & ' ' & c

End Sub

Function MyAverage(ByVal a, ByVal b, ByVal c)

a = a + 60

MyAverage = (a + b + c) / 3

End Function

代碼截圖:

看了上面的代碼,大家想想maxbox彈出的對話框是什么內(nèi)容呢?

看看上面的結(jié)果,是否和你想的一致呢?

上述過程中使用關(guān)鍵字ByVal在參數(shù)名稱前,可以防止函數(shù)改變參數(shù)值。MynzNumbers給三個變量賦值,再調(diào)用函數(shù)MyAverage來計算該三個變量的平均值。函數(shù)的參數(shù)就是變量a,b和 c。注意,所有變量的前面都有關(guān)鍵字ByVal。在計算均值之前,函數(shù)MyAverage 改變了變量a的值,在函數(shù)內(nèi)部,變量a等于70(10+60),因此,當函數(shù)將計算的均值傳遞給過程MynzNumbers時,MyAverage顯示的結(jié)果是40而不是20,接下來的三個顯示每個變量的內(nèi)容,變量儲存的內(nèi)容和它們開始被賦的值一致——10,20,30。

那么:

1 如果不是按值傳遞,結(jié)果會是什么呢?

2 a,b,c 變量傳遞的又是如何由實參變成形參的呢?過程又是如何進行的呢?

3 形參會改變指針嗎?

我們下節(jié)內(nèi)容再接著談。

今日內(nèi)容回向:

1 什么是形參、實參?

2 如何理解參數(shù)的傳遞過程?參數(shù)的傳遞有幾種形式?

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
S7-1200/1500PLC的實際參數(shù)與形勢參數(shù)的怎么理解??
VB Function語句
C++ 值傳遞、指針傳遞、引用傳遞詳解(轉(zhuǎn))
c++形參實參
值和傳引用、傳地址的區(qū)別是什么? - 依睛(IT blog) 普通隨記 - IT博客網(wǎng)
利用函數(shù)參數(shù)和返回值提高嵌入式軟件質(zhì)量
更多類似文章 >>
生活服務
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服