用using取别名居然不支持泛型…

本文探讨了在C#编程中尝试为复杂的泛型类型定义别名的方法,作者试图通过using指令简化Action泛型类型的表示,但遇到了语法限制。文中提到目前C#不支持带有泛型参数的using别名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    今天在写一段代码的时候用到了个类型:

Action<Action<List<IDataParameter>, object>[], T, List<IDataParameter>, Func<object, object>>

    这个类型声明一下,整个一行就被拉得很长,而且那行还要出现两次这个类型…

    为了美观,想到了第一个方法就是用using给这个类型取个别名,然后写了这样的一个using:

using ReadableAlias<T> = Action<Action<List<IDataParameter>, object>[], T, List<IDataParameter>, Func<object, object>>;

 

    结果,发现悲剧了,using报错。。。

    不知道ms什么时候能够加强一下using的别名用法,加上泛型的支持。

 

(PS:别名部分不包含泛型参数时是支持的,eg.

using Alias = Action<object>;

但是别名部分包含泛型参数时,就不支持了,eg.

using Alias<T> = Action<T>;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值