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 );
}
相关推荐
啊真真真6 分钟前
ArgoCD:我的GitOps探索之旅与未来展望
java·算法·argocd
魔术师Dix8 分钟前
StartGame:Unity TDD 外部工程指南
学习·游戏·unity·c#·测试驱动开发
深入云栈12 分钟前
从零手写连接池:Redisson ConnectionsHolder设计与简化实现
java·架构
学编程就要猛15 分钟前
解析博客系统后端实现
java·mysql·jwt·摘要算法·加盐
笨蛋不要掉眼泪16 分钟前
RabbitMQ消息队列:交换机机制
java·分布式·rabbitmq
听雨入夜17 分钟前
zero.zhang
开发语言·python
江屿风19 分钟前
【C++笔记】【二叉搜索树】流食般投喂
开发语言·数据结构·c++·笔记
1001101_QIA26 分钟前
VRChat 插件开发方式
开发语言·vr
米码收割机1 小时前
【项目】spring boot+vue3 宠物领养系统(源码+文档)【独一无二】
java·spring boot·宠物
会编程的土豆2 小时前
GoWeb 处理请求详解:请求行、请求头、请求参数与给客户端响应
开发语言·http·golang