首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“操作人员的模糊使用”

“操作人员的模糊使用”
EN

Stack Overflow用户
提问于 2014-08-23 04:49:50
回答 2查看 5.3K关注 0票数 3

我刚下载了Xcode6-beta6。对于以下代码,我得到了编译器错误“操作符的模糊使用”

reversed = sorted(names, { s1, s2 in s1 > s2 } )

它以前在Xcode6-beta5上工作过。

代码来自苹果快速文档152

有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2014-11-12 13:27:53

我也有过同样的问题

if ("aa“> "bb") {.}

反向=排序(名称,{ $0 > $1 })

显然,XCode不能正确推断参数的正确类型"String“,从而给操作符造成歧义。我的解决方案是显式声明类型--至少其中一个类型--这也使代码更具可读性。如:

if ("aa“作为字符串> "bb") {.} 反向=排序(名称,{ $0作为字符串> $1 })

票数 5
EN

Stack Overflow用户

发布于 2014-11-04 15:34:52

这似乎是基金会框架的桥梁中的一个缺陷。它声明重写>,以处理StringNSStringNSStringString的比较,但在匹配过程中(在某些情况下)出现冲突。您可以通过稍微修改语法来绕过它(出于某种原因):

代码语言:javascript
复制
reversed = sorted(names, { s1, s2 in return s1 > s2 } )
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25458548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档