透過反射來決定變數名稱
透過反射辨識變數名稱可能是一項複雜的任務。雖然 IL 程式碼缺乏顯式變數名稱,但還有其他方法可以檢索它們。
透過表達式樹的方法
一種方法涉及利用表達式樹。將變數提升為閉包,可以透過表達式體取得它們的名稱:
用法:
表達式樹的缺點
但是,這種方法相當緩慢,在效能密集場景中應該避免。它需要創建多個物件、GC壓力和廣泛的反射。
Nameof關鍵字(C# 6.0以上)
隨著C#中nameof關鍵字的引入6.0 中,出現了更有效率的方法:
這種方法提供了便利,並且產生的性能最小開銷。
以上是C#中如何高效率取得變數名?的詳細內容。更多資訊請關注PHP中文網其他相關文章!