[問題] 為何函數只能有一個傳回值?

看板C_and_CPP作者 (丁丁)時間13年前 (2011/05/05 03:41), 編輯推噓6(606)
留言12則, 9人參與, 最新討論串1/1
使用自訂函式的時候,參數可以有很多個 可是傳回的值只能有一個 (如果要傳多一點參數的話,就得用傳reference的方式) 為什麼要這樣設計呢? 函式不就像個黑盒子 有很多個input 也應該可以有很多個output啊~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.65.21

05/05 03:44, , 1F
簡化數學<->程式
05/05 03:44, 1F

05/05 03:50, , 2F
你都說是'函式'了, 還能 1對多 / 多對多 ?
05/05 03:50, 2F

05/05 03:53, , 3F
你也可以把很傳回值包成一個struct傳回來,但未必較方便
05/05 03:53, 3F

05/05 03:53, , 4F

05/05 04:56, , 5F
#include <tuple>
05/05 04:56, 5F

05/05 08:12, , 6F
印象中go language可以multiple return
05/05 08:12, 6F

05/05 08:13, , 7F
看是要回傳多少個,兩個就用pair,多個就用F大說得
05/05 08:13, 7F

05/05 10:23, , 8F
去看幾個比較新的語言就有了
05/05 10:23, 8F

05/05 10:53, , 9F
因為你用的是 C 語言,用 FORTH 就沒這個問題了 :)
05/05 10:53, 9F

05/05 11:10, , 10F
習慣單一回傳值,看到一些script language的多回傳反而怪
05/05 11:10, 10F

05/05 12:07, , 11F
C的函式和數學的函數沒太大關係吧 ...
05/05 12:07, 11F

05/05 18:07, , 12F
XD
05/05 18:07, 12F
文章代碼(AID): #1DmQlFLP (C_and_CPP)