[請益] function參數有需要再存一次嗎?

看板Programming作者 (哥)時間7年前 (2017/06/16 11:44), 7年前編輯推噓7(7011)
留言18則, 8人參與, 最新討論串1/1
常看到有人寫函數會把參數的值用變數存起來, 請問這樣的寫法有什麼特別的用意還是為避免什麼程式陷阱嗎? 為何不要直接用para就好了? function (para) { value = para value = value + 1 .... } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.136.100.204 ※ 文章網址: https://www.ptt.cc/bbs/Programming/M.1497584653.A.27E.html

06/16 12:44, , 1F
先說para的型別
06/16 12:44, 1F

06/16 12:55, , 2F
可能用於轉型,有時不願意公開函數
06/16 12:55, 2F

06/16 12:55, , 3F
內的型別,就會採用這招。如果型別
06/16 12:55, 3F

06/16 12:55, , 4F
一樣,他也許是自己highlight排版
06/16 12:55, 4F

06/16 12:55, , 5F
需要。
06/16 12:55, 5F

06/16 13:50, , 6F
我心中想問的是para 和 value 型別一樣。
06/16 13:50, 6F
※ 編輯: ggirls (114.136.100.204), 06/16/2017 13:53:41

06/16 14:29, , 7F
可能只是習慣 心理上不想破壞arg內容
06/16 14:29, 7F

06/16 14:34, , 8F
什麼語言?
06/16 14:34, 8F

06/16 14:53, , 9F
我在C和Python都看過吧
06/16 14:53, 9F

06/16 15:27, , 10F
也不一定是心理上啦, 就只是確保這個參數名
06/16 15:27, 10F

06/16 15:27, , 11F
在整個函數裡面都是一樣的值
06/16 15:27, 11F

06/16 15:28, , 12F
直接用的話可能會無意間改掉之類的
06/16 15:28, 12F

06/16 19:26, , 13F
我寫 shell script 也會這樣做~
06/16 19:26, 13F

06/16 19:26, , 14F
目的就像 L 大說的,也為了可讀性
06/16 19:26, 14F

06/16 19:26, , 15F
shell script 函數參數名稱真的挺難看的
06/16 19:26, 15F

06/16 21:27, , 16F
C/C++的話就完全沒有必要了
06/16 21:27, 16F

06/30 02:03, , 17F
可能是因為某些程式語言是pass by
06/30 02:03, 17F

06/30 02:04, , 18F
reference 吧,這樣做比較安全
06/30 02:04, 18F
文章代碼(AID): #1PGrGD9- (Programming)