首页 >后端开发 >C++ >如何使用反射在 C# 中获取变量名称以及有哪些替代方案?

如何使用反射在 C# 中获取变量名称以及有哪些替代方案?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-30 18:48:15199浏览

How Can I Get a Variable's Name in C# Using Reflection and What are the Alternatives?

通过反射获取变量名称

单独使用反射来确定编译后的变量名称是不可行的。变量在编译为中间语言 (IL) 期间会丢失名称。

但是,使用表达式树和 lambda 表达式,可以将变量提升为闭包,从而创建引用该变量的匿名函数。

代码实现:

用法:

性能注意事项:

使用此方法可以由于创建多个对象、GC 压力和开销而缓慢反射。

C# 6.0 及更高版本的替代方案:

在 C# 6.0 中,nameof 关键字允许更直接的方法:

以上是如何使用反射在 C# 中获取变量名称以及有哪些替代方案?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn