問一個白癡Call By Value問題

看板Visual_Basic作者 (月光光心慌慌)時間18年前 (2007/02/13 21:14), 編輯推噓9(904)
留言13則, 6人參與, 最新討論串1/1
有一傳值呼叫疑問請各位高手協助一下 我自學至今觀念還不是很清楚 Sub ADD (X,ByVal Y) X=X^2 : Y=Y^2 End Sub Private Sub Form_Activate() A=2:B=3 Call ADD (A+B,B) Print A,B End Sub 答案是 2 , 3 B有Call ByValue是沒問題 但是X沒有阿??請各位高手解惑一下 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.57.99.156

02/13 21:38, , 1F
這樣子是不是只有PRINT出來,實際上ADD有代進去,但沒PRINT
02/13 21:38, 1F

02/13 21:56, , 2F
啥意思?
02/13 21:56, 2F

02/13 22:09, , 3F
add function 是空的
02/13 22:09, 3F

02/13 22:20, , 4F
抱歉我漏打一行 補上去 X^2 Y^2
02/13 22:20, 4F
※ 編輯: terryporter 來自: 61.57.99.156 (02/13 22:21)

02/14 06:45, , 5F
vb6的預設是 Call By Reference
02/14 06:45, 5F

02/14 14:00, , 6F
然後?
02/14 14:00, 6F

02/14 19:28, , 7F
但是,你的主程式 呼叫副程式的時候,對應的參數是
02/14 19:28, 7F

02/14 19:29, , 8F
常數,(), 數學運算式的時候,就變成 call by reference
02/14 19:29, 8F

02/15 23:09, , 9F
當傳進的, 不是單一變數時, 一律都是用 Call by Value
02/15 23:09, 9F

02/15 23:16, , 10F
不然傳個數字123進去, 要referance到哪去 :)
02/15 23:16, 10F

02/17 12:14, , 11F
是否可以說是把數字當作常數傳入,一樣是 byref
02/17 12:14, 11F

02/17 12:15, , 12F
沒有寫byval 都一律使用byref傳遞0.0
02/17 12:15, 12F

03/02 23:10, , 13F
這題我懂了,感謝以上熱心的高手
03/02 23:10, 13F
文章代碼(AID): #15qRcVAc (Visual_Basic)
文章代碼(AID): #15qRcVAc (Visual_Basic)