C# 获取入参函数名

前言

C# 如何通过形参获得实参的名字?
C# 10 新特性 ------ CallerArgumentExpression

我最近在研究Godot,想简化Godot的操作。所有有了这个需求

csharp 复制代码
public static void Test(string str){
	console.wirteLine(nameof(str));
}
public static void Main(string[] args) {
    string newStr = "hello";
    Test(newStr);

}

打印结果

复制代码
//输出
str
//我想要的输出
newStr

最后找了好久,终于找到了最新的C#10新特性,解决了此问题

C#10新特性

C# 10 新特性 ------ CallerArgumentExpression

这里不多讲了,结果就是可以拿到形参的名称。

csharp 复制代码
public static void Test(string str,[CallerArgumentExpression(nameof(node))] string nameExpression = null){
	//这样就能拿到形参了
	console.wirteLine(nameExpression );
}
相关推荐
AI进化营-智能译站7 小时前
ROS2 C++开发系列13-运算符重载让ROS2消息处理更自然
java·开发语言·c++·ai
时空系7 小时前
第6篇:数据容器——管理大量数据 Rust中文编程
开发语言·后端·rust
eLIN TECE7 小时前
Go基础之环境搭建
开发语言·后端·golang
念何架构之路7 小时前
Go反射应用技巧
开发语言·后端·golang
shjita7 小时前
java根据键值对中值的大小进行排序的手法。
java·开发语言·servlet
狼与自由7 小时前
clickhouse引擎
clickhouse·c#·linq
wangnaisheng7 小时前
【C#】死锁详解:发生原因、优化解决方案
c#
Rabitebla7 小时前
vector 的骨架:三根指针、模板陷阱与迭代器失效的第一现场
开发语言·数据结构·c++·算法
时空系7 小时前
第7篇:功能——打造你的工具箱 Rust中文编程
开发语言·网络·rust
薪火铺子7 小时前
Spring Security 6.x 实战指南
java·后端·spring