加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

泛型 – 如何为嵌套在通用结构体中的类实现一个运算符?

发布时间:2020-12-14 05:52:33 所属栏目:百科 来源:网络整理
导读:当我在一个通用的结构体中嵌套一个类,并尝试实现相等运算符,如下所示: struct OuterT { class Inner : Equatable {}}@infix func == T(lhs: OuterT.Inner,rhs: OuterT.Inner) - Bool { return lhs === rhs} 当我尝试运行该项目时,我收到以下错误: While
当我在一个通用的结构体中嵌套一个类,并尝试实现相等运算符,如下所示:
struct Outer<T> {
    class Inner : Equatable {}
}

@infix func == <T>(lhs: Outer<T>.Inner,rhs: Outer<T>.Inner) -> Bool {
    return lhs === rhs
}

当我尝试运行该项目时,我收到以下错误:

While emitting IR SIL function @_TFCC4Test5Outer5InnerCU__fMS1_FT_S1_ for 'init' at .../Testing.swift:20:11
<unknown>:0: error: unable to execute command: Segmentation fault: 11
<unknown>:0: error: swift frontend command failed due to signal (use -v to see invocation)
Command /Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift failed with exit code 254

然而,当我做同样的事情没有嵌套类时,它工作正常:

class MyClass : Equatable {}

@infix func == (lhs: MyClass,rhs: MyClass) -> Bool {
    return lhs === rhs
}

这是编译器的错误,还是我做错了?

将泛型类型struct中的类或结构体嵌套现在被XCode6 Beta6标记为无效

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读