【发布时间】:2015-07-16 02:35:58
【问题描述】:
我有一个简单的课程:
public class Stu
{
public string Name { get; set; }
}
如果我这样做:
var stu = new Stu();
Console.WriteLine(nameof(stu.Name));
效果很好。 但是这个:
Console.WriteLine(nameof(new Stu().Name));
或者这个:
Console.WriteLine(nameof((new Stu()).Name));
不起作用,编译器告诉我:“表达式不能用于 nameof 的参数”。
不知道为什么。提示是什么意思?运算符“nameof()”的正确参数类型是什么?
我在网上搜索,this 页面告诉我“表达式可能是属性组或方法组”,但表达式“new Stu().Name”不是“属性组”吗?
【问题讨论】: