gpt4 book ai didi

c# - 如何约束泛型参数具有特定的静态函数?

转载 作者:行者123 更新时间:2023-11-30 21:13:54 27 4
gpt4 key购买 nike

我想要一个实现特定静态函数的通用参数。作为其接口(interface)(静态函数)的一部分,对我来说,有这样的通用参数约束是合乎逻辑的,但我找不到如何做到这一点。感谢您的帮助。

目前,我正在通过定义返回静态值的非静态属性来解决此类问题,作为 OOP 开发人员,我当然不喜欢这样。此属性是某些接口(interface)的一部分,通用参数是从接口(interface)继承的约束。

最佳答案

你不能 - 没有静态成员约束类型参数这样的东西,除非你计算需要无参数构造函数的 new() 约束。

请注意,静态成员不能是普通 C# 意义上的接口(interface)的一部分 - 即使它们显然可以是该类型的公共(public) API 的一部分。

我之前在博客上写过 "static interfaces" 的可能性在 C# 的 future 版本中(只是作为一种功能请求),但现在肯定不可用。

有时最好的替代方法是使用一个单独的类型来实现一个普通接口(interface) - 如果您可以向我们提供有关您的上下文的更多信息,我们可能会建议替代方法。

关于c# - 如何约束泛型参数具有特定的静态函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6553301/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com