在 C# 中,可以利用反射结合 lambda 表达式,在运行时获取成员变量的名称字符串,避免将变量名硬编码为字符串字面量。
void Start() { Debug.LogError(GetName(() => test_member)); } int test_member = 0; string GetName<T>(Expression<Func<T>> exp) { var mem = exp.Body as MemberExpression; var ret = mem.Member.Name; return ret; }