void foo(int n)那麼 n 就是 parameter, 而在呼叫此函數時, 可能是這樣:
{
.....
}
foo(20)或是
foo(x)此時 20 或是 x 就是 argument。
在某些程式語言中, 也會把 parameter 稱為 formal parameter, 而將 argument 稱為 actual parameter, 前者表示只是形式上的參數, 告訴程式呼叫此函數時, 需要傳入的資料個數與型別, 而後者表示實際上傳給函數的資料。如果要中文化, 這還真是難倒我了, 但若是 formal parameter 譯為「形式參數 」、actual parameter 譯為「實際參數」, 倒還可以, 但要想兩個詞彙分辨 parameter 與 argument , 還真是有點難啊!目前較通用的翻譯是 parameter 為「參數」、argument 為「引數」, 姑且可以看成「參考格式」、「實際引用」的意思吧。
5 則留言:
原來如此!
Great explained
消化您的文章範例之後的理解是 20 這個 argument 是可以改變的,隨著 argument 改變之後的函數式運算結果 foo(int n) 就會跟著改變?
以手沖一杯好咖啡來舉例,要沖一杯好咖啡需要三個參數 parameter:咖啡粉研磨的顆粒粗細(G)、沖煮的水溫(C)、沖煮時要用的總水量(V)。例如咖啡粉都是用20公克,但水量240cc或300cc回傳的結果就是口感濃厚或者口感清爽。240cc或300cc就是所謂的 argument,而需要用足夠的水量才能萃取出來一杯咖啡,我們就先幫水量這個要素取一個固定的名稱(V),因為名稱不改變,所以叫 formal parameter?
你這個手沖咖啡的比喻很恰當, 我很喜歡
Very helpful! Thanks a lot :)
張貼留言