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 );
}
相关推荐
郑洁文1 分钟前
学生信息管理系统
java·毕业设计·学生信息管理系统
时尚IT男2 分钟前
Python发票识别实战:从PDF中精准提取发票号与(小写)¥金额
开发语言·python·pdf
剑挑星河月4 分钟前
31.下一个排列
java·算法·leetcode
basketball6164 分钟前
Go 语言从入门到进阶:6. 一文彻底吃透结构体(Struct)
开发语言·unity·golang
ch.ju4 分钟前
Java Programming Chapter 4——Private attribute
java·开发语言
许彰午6 分钟前
12_ArrayList与LinkedList深度对比
java·前端·python
CTA终结者17 分钟前
期货量化环境装不上怎么办:天勤 TqSdk 安装与 Python 版本排查
开发语言·python
影寂ldy18 分钟前
C# 多态与函数重载(静态多态)
开发语言·c#
SilentSamsara18 分钟前
Python 与 Docker:多阶段构建、最小镜像与健康检查
运维·开发语言·python·docker·中间件·容器