Es ist eine neue Ergänzung zu Objective-C, genannt Leichte Generika . Es wurde in iOS9 / OS X 10.11 eingeführt, um die Interoperabilität zwischen Swift und Objective-C zu verbessern. Wie die Dokumentation sagt:
%Vor%Objective-C-Deklarationen von NSArray-, NSSet- und NSDictionary-Typen Leichte generische Parametrisierung wird von Swift mit importiert Informationen über die Art ihrer Inhalte erhalten.
Betrachten Sie zum Beispiel die folgenden Objective-C-Eigenschaftsdeklarationen:
%Vor%Hier ist, wie Swift sie importiert:
Zusätzlich zu Michał Ciubas Antwort:
Trotz der Dokumentation ( Lightweight Generics ) scheint es nicht explizit zu erwähnen, es ist nicht nur für Swift: diese Syntax beeinflusst Objective-C. Wenn Sie beispielsweise ein veränderbares Array von CAShapeLayer*
deklarieren, führt das Hinzufügen oder Zugreifen auf inkompatible Elemente zu Compilerwarnungen. ZB
Tags und Links objective-c ios