Ben yuva genel yapı içinde bir sınıf ve bunun gibi, eşitlik operatörü uygulamaya çalıştığınızda:Genel bir yapıda iç içe geçmiş bir sınıf için nasıl bir operatör uygularım?
struct Outer<T> {
class Inner : Equatable {}
}
@infix func == <T>(lhs: Outer<T>.Inner, rhs: Outer<T>.Inner) -> Bool {
return lhs === rhs
}
Ben projeyi çalıştırmayı denediğinizde aşağıdaki hatayı alıyorum: Ancak
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
}
bu derleyici ile bir hata mı, yoksa yanlış bir şey yapıyorum: Ben sınıf yuvalama olmadan aynı şeyi yaptığında iyi çalışır?
Bu bir hata olduğunu derleyici, rapor etmelisin. –
Evet şu anda Sınıf değişkenleri desteklenmiyor ... buradaki neden bu olabilir – Jack
Burada kullanılan sınıf değişkenleri yok ve her ikisi de yapıdaysa aynı şey gerçekleşiyor. – Jay