基本用法列印變數名稱

nameof 運算子允許你以字串形式獲取變數,型別或成員的名稱,而無需將其硬編碼為文字。該操作在編譯時進行評估,這意味著你可以使用 IDE 的重新命名功能重新命名引用的識別符號,並且名稱字串將隨之更新。

var myString = "String Contents";
Console.WriteLine(nameof(myString));

會輸出

MyString 的

因為變數的名稱是 myString。重構變數名將改變字串。

如果在引用型別上呼叫,nameof 運算子將返回當前引用的名稱,而不是基礎物件的名稱或型別名稱。例如:

string greeting = "Hello!";
Object mailMessageBody = greeting;

Console.WriteLine(nameof(greeting)); // Returns "greeting"
Console.WriteLine(nameof(mailMessageBody)); // Returns "mailMessageBody", NOT "greeting"!