gpt4 book ai didi

c# - 如何将 Type 参数限制为仅某个接口(interface)

转载 作者:行者123 更新时间:2023-12-02 02:38:29 25 4
gpt4 key购买 nike

是否可以限制 Type 参数仅允许调用者传入实现特定接口(interface)的类类型?以下面为例:

public void RegisterProcessors(params Type[] types)

现在,调用者可以将任何类类型传递给此方法。例如:

RegisterProcessors(typeof(string));  

但我真正想要的是只允许调用者传入实现 IProcessor 接口(interface)的类型。那可能吗?当然,像下面这样的东西在语法上是错误的

public void RegisterProcessors(params Type<IProcessor>[] types)

最佳答案

不,基本上。如果您使用泛型,则可以使用

public void RegisterProcessor<T>() where T : IProcessor

但是您不能将其与 params 结合使用,因此调用者需要为每种类型调用一次。这可能没问题。

关于c# - 如何将 Type 参数限制为仅某个接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63969918/

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