2017-08-09 3 views
0

次のコードは "引数"を出力します。呼び出されたメソッドのメソッドから引数の名前を取得する方法はありますか?

void PrintNameOf(string argument) 
{ 
    Console.WriteLine($"{nameof(argument)} has value: {argument}"); 
} 

string myString = "hello"; 
PrintNameOf(myString); 

「myString」を取得する方法はありますか?

+2

ない操作を行う必要があるだろう。しかし、このメソッドの外ではもちろん 'nameof(mystring)'を使うことができます。 – HimBromBeere

+4

コンパイルされたコードでは、 'mystring'は通常callsiteにも存在しません。呼び出されるメソッドには気にしないでください。 –

答えて

1

*方法*内の識別子が `でもEIST doesn't myString`ので、あなたは、

void PrintNameOf(string argument, string name) 
{ 
    Console.WriteLine($"{name} has value: {argument}"); 
} 

string myString = "hello"; 
PrintNameOf(myString, nameof(myString)); 
関連する問題