Swift Struct不符合协议Equatable?

前端之家收集整理的这篇文章主要介绍了Swift Struct不符合协议Equatable?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何使结构符合协议“Equatable”?

我正在使用Xcode 7.3.1

struct MyStruct {
   var id: Int
   var value: String

   init(id: Int,value: String) {
       self.id = id
       self.value = value
   }

   var description: String {
       return "blablabla"
   }

}

当我使用“MyStruct”时,Xcode显示错误

MyStruct does not conform to protocol “Equatable”

你有想法使MyStruct符合协议吗?

@H_502_14@
好的,经过大量的搜索,它正在工作……
struct MyStruct {
    var id: Int
    var value: String

    init(id: Int,value: String) {
        self.id = id
        self.value = value
    }

    var description: String {
        return "blablabla"
    }

}

extension MyStruct: Equatable {}

func ==(lhs: MyStruct,rhs: MyStruct) -> Bool {
    let areEqual = lhs.id == rhs.id &&
        lhs.value == rhs.value

    return areEqual
}

我的结构是在一个类中,所以它没有用.我把这个Struct移出了我的班级,现在它很好:)

猜你在找的Swift相关文章