」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > c#中的vs.參數:何時應該使用哪個?

c#中的vs.參數:何時應該使用哪個?

發佈於2025-01-28
瀏覽:601

Out vs. Ref Parameters in C#: When Should You Use Which?

何時使用“out”而不是“ref”

在“out”和“ref”參數之間進行選擇時,除非特別需要“ref”,否則預設選擇是“out”。

Out 與 Ref 的區別

“ref”允許方法修改作為參數傳遞的變量的原始值,而“out”則禁止這種能力。當涉及跨進程或跨機器的數據傳輸時,這種區別變得至關重要,因為編組初始值可能會導致不必要的處理。

適合使用“out”的場景

考慮以下場景:

person.GetBothNames(out a, out b);

假設“person”是一個對象,“GetBothNames”是一個檢索兩個值的方法,則“a”和“b”的初始值與方法的操作無關。在這種情況下,使用“in”或“out”是偏好問題,“out”是推薦的選擇,以消除初始值的無用編組。

適合使用“ref”的場景

另一方面,當修改初始值是方法意圖的一部分時,“ref”是合適的:

bool didModify = validator.SuggestValidName(ref name);

“name”參數通過引用傳遞,允許“validator”方法更改其值並返回“didModify”以指示更改。

簡而言之,在大多數情況下,如果不需要修改初始變量值,“out”是更好的選擇;而當需要進行此類修改時,“ref”則變得必要。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3