2
爲什麼參數UpdClient.Receive a ref
參數,而不是簡單的out
?爲什麼UdpClient.Receive需要ref參數?
根據MSDN頁面,參數填充了發送數據報的地址。但是,它沒有指定它用於什麼類型的輸入,僅輸出。
爲什麼參數UpdClient.Receive a ref
參數,而不是簡單的out
?爲什麼UdpClient.Receive需要ref參數?
根據MSDN頁面,參數填充了發送數據報的地址。但是,它沒有指定它用於什麼類型的輸入,僅輸出。
這看起來像那些(非常罕見)BCL不一致/差異之一。該參數在方法中根本不用作輸入(如Reflector所示)。
也許情況並非總是如此,他們繼續使用ref
而不是切換到out
以保持向後兼容性。
我不認爲保留方法簽名但改變funcionality將保留任何類型的向後兼容性。所以,要麼他們打破了兼容性,忘了修復簽名(極不可能),或者總是這樣...... – 2010-07-29 18:11:42