我想知道这是XCode中的错误还是我做错了什么:
我有一个实现Comparable
的类:
class Span: Comparable {
var start: Int
var end: Int
// Some stuff skipped
static func < (lhs: Span, rhs: Span) -> Bool {
lhs.start < rhs.start
}
static func == (lhs: Span, rhs: Span) -> Bool {
lhs.start == rhs.start
}
}
XCode抱怨func <
和func ==
声明都为
Result of operator '<' is unused
和Result of operator '==' is unused
在我的代码中,确实从未明确调用它们,但它们被用作
var spans: [Span] = []
spans.append(Span(....))
...
spans.append(Span(....))
spans.sort() // sort() calls operator '<' for a Comparable type Span
我做错了什么还是XCode中的错误?
已编辑:不缺少return
。它是隐式的。代码编译就很好。这是我要问的警告。没有关于“遗失回报”的更多答案。谢谢。
答案 0 :(得分:2)
您需要return
布尔值
static func < (lhs: Span, rhs: Span) -> Bool {
return lhs.start < rhs.start
}
static func == (lhs: Span, rhs: Span) -> Bool {
return lhs.start == rhs.start
}