2015-11-10 1 views

Antwort

6

Ich konnte die Antwort nicht finden, aber durch herumspielen, bin ich zu dem Schluss gekommen, dass Sie nicht können. Sein, dass ein Protokoll nur Klassen zu beschränken, können Sie vorangehen es mit class wie

protocol SomeProto: class { 
    func structYourStuff() -> Void 
} 

der Annahme, dass dies unter anderen Typen konsistent sein würde, habe ich versucht,

protocol SomeProto: struct { 
    func structYourStuff() -> Void 
} 

Aber Xcode gab mir fünf verschiedene Fehler in einer Zeile, die mich zu der Schlussfolgerung führt, dass Sie nicht können. Ich könnte aber völlig falsch liegen, ich habe erst vor ungefähr einer Woche angefangen, Swift zu lernen

+2

Genau, wir können das nicht tun. IMHO, es wäre eine nützliche Erweiterung der Sprache. – CouchDeveloper

+1

@CouchDeveloper Sie haben mich überlegt, vielleicht gibt es eine Möglichkeit, eine enge Funktionalität aufzubauen, da wir die Flexibilität von benutzerdefinierten Operatoren haben. Ich kann mir nicht vorstellen, wie das funktionieren würde. – Chris