[問題] 關於out與ref的差別

看板C_Sharp作者 (楊伯)時間15年前 (2010/08/01 17:04), 編輯推噓4(403)
留言7則, 3人參與, 最新討論串1/1
剛學習到使用ref這個修飾,在看msdn的說明時候發現 還有一個叫out的修飾,但是我看一看好像只有初使化上 面的差別。 想請問版上前輩們,關於這兩個修飾在實務上有什麼地方 在使用的時候會比較看的出它們兩個的差異呢? 先感謝各位了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.128.56

08/01 17:07, , 1F
C#的out和ref都是作call by address, 只差在用out時, 在方
08/01 17:07, 1F

08/01 17:08, , 2F
法內編譯器會自動檢查你有沒有設值給有加out的參數..若無
08/01 17:08, 2F

08/01 17:08, , 3F
就發出錯誤訊息.
08/01 17:08, 3F

08/01 19:40, , 4F
然後你的其他程式call那function時, 就算參數無預設值也
08/01 19:40, 4F

08/01 19:40, , 5F
不會有warning...
08/01 19:40, 5F

08/16 07:38, , 6F
ref傳入的值function內可以使用,out的參數在function中一
08/16 07:38, 6F

08/16 07:39, , 7F
定要先給值才能使用,等於傳入的值是無用的
08/16 07:39, 7F
文章代碼(AID): #1CLJYJig (C_Sharp)