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 );
}
相关推荐
猹叉叉(学习版)2 分钟前
【ASP.NET CORE】 13. DDD初步实现
笔记·后端·架构·c#·asp.net·.netcore
huabiangaozhi2 分钟前
Spring Cloud Gateway 整合Spring Security
java·后端·spring
HLC++3 分钟前
C++中的类和对象
开发语言·c++
小王不爱笑1323 分钟前
Java List 集合全面解析:ArrayList、LinkedList 与 Vector 的深度对比
java·windows·list
setmoon2145 分钟前
C++与量子计算模拟
开发语言·c++·算法
KIKIiiiiiiii8 分钟前
微信自动化机器人开发
java·开发语言·人工智能·python·微信·自动化
victory043110 分钟前
containerd打包命令 和NFS挂载
java·开发语言
野犬寒鸦11 分钟前
从零起步学习计算机操作系统:进程篇(知识扩展提升)
java·服务器·开发语言·后端·面试
※※冰馨※※12 分钟前
【QT】System error #1455: 页面文件太小,无法完成操作
开发语言·windows·qt
Amnesia0_012 分钟前
C++的异常
开发语言·c++·学习