在C#中解析参数
解决params传递的参数的可变数量时有什么规则?
假设我有代码: public void Method(params object[] objects) { } public void Method(IMyInterface intf,params object[] objects) { } 方法(a,b,c)如何解决,如果一个是IMyInterface?我可以肯定的是,C#总是会尝试选择最匹配的重载? 解决方法
这是由C#语言规范回答的:
在您的示例中,两个重载仅适用于扩展形式.由于第二个具有更多的声明参数会更好. 在规范的上下文中,一个超过所有其他的重载意味着编译器选择它来绑定该调用,正如在讨论的示例中发生的那样(如果没有一个超负载比所有其他的更好,结果是由于模糊而导致的编译时错误). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 關於 fastjson 中的 SimplePropertyPreFilter
- ios – linphone-iphone xcode项目有rootca.pem错误
- react-native – ListView.DataSource中rowHasChanged的确切
- Fresco的报错:Binary XML file line #0: Error inflating
- C&Lua:luaL_dostring返回值
- 举例解析设计模式中的工厂方法模式在C++编程中的运用
- 无论列的顺序如何聚合
- 是否有类似标准的XML来编写乐谱
- Swiftier Swift用于“添加阵列,或者如果不存在则创建……”
- sqlite[S8]: attempt to write a readonly database