使用动态关键字访问常量
这是如何调用的后续内容C#4.0 中具有动态类型的静态方法?
在使用 double.MaxValue、int.MaxValue 等使用动态关键字和/或泛型时,有没有办法消除重复?
人为的例子:
T? Transform<T>(Func<T?> continuation)
where T : struct
{
return typeof(T).StaticMembers().MaxValue;
}
This is a follow-up to How to invoke static method in C#4.0 with dynamic type?
Is there a way to remove duplication when working with double.MaxValue, int.MaxValue, etc. by using dynamic keyword and/or generics?
Contrived example:
T? Transform<T>(Func<T?> continuation)
where T : struct
{
return typeof(T).StaticMembers().MaxValue;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
以这种方式修改类
StaticMembersDynamicWrapper
:代码的问题是它只检索属性,但常量实际上是字段。
Modify class
StaticMembersDynamicWrapper
in this way:Problem of your code is that it only retrieves properties, but constants are actually fields.
具有一点风格和天赋,相同的代码:
和一个缓存类,以避免创建不需要的对象:
With a little style and flair, same code:
And a cache class, to avoid creating unneeded objects: