C# 获取入参函数名

前言

C# 如何通过形参获得实参的名字?

C# 10 新特性 —— CallerArgumentExpression

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

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

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

public static void Test(string str,[CallerArgumentExpression(nameof(node))] string nameExpression = null){
	//这样就能拿到形参了
	console.wirteLine(nameExpression );
}

你可能感兴趣的:(C#,c#,java,开发语言)