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 );
}
相关推荐
罗小爬EX9 小时前
Arthas 实战指南(二):profiler生成火焰图实战
java·arthas·火焰图
csdn_aspnet9 小时前
C++ 求n边凸多边形的对角线数量(Find number of diagonals in n sided convex polygon)
开发语言·c++·算法
nvvas9 小时前
IDEA安装并且使用Roo Code工具
java·ide·人工智能
wsoz10 小时前
快速从C过渡到C++
c语言·开发语言·c++
unicrom_深圳市由你创科技10 小时前
LabVIEW和C#在工业控制中的应用差异是什么?
fpga开发·c#·labview
深邃-10 小时前
字符函数和字符串函数(1)
c语言·开发语言·数据结构·c++·算法·html5
初中就开始混世的大魔王10 小时前
3.1 DDS 层-Core
开发语言·c++·网络协议·tcp/ip·信息与通信
菜鸟小九10 小时前
JVM垃圾回收
java·jvm·算法
曹牧10 小时前
JDK 1.6 ,无法通过安全套接字层(SSL/TLS)加密建立数据库安全连接
java·开发语言·ssl
book123_0_9910 小时前
Redis四种模式在Spring Boot框架下的配置
java