ich Wrapper bin Gebäude um GObject
, und ich versuche, generische Zeiger für sieSyntaxfehler beim Erstellen unsichere allgemeine Zeiger (Generic Parameter ‚Zeigerende‘ konnte nicht geschlossen werden)
class Object<T> {
internal(set) var object = UnsafeMutablePointer(nil)
}
zu schaffen, aber ich bin immer diese Fehler
Der Typ sollte meiner Meinung nach gelöst werden, aber Compiler beschwert. Erstelle ich diesen Zeiger richtig? Ist das nur Compilerfehler oder habe ich das falsch gemacht?
bearbeiten habe ich versucht, jede Syntax, die mir in den Sinn kam, wie folgt aus:
class Object<T> {
internal(set) var object: UnsafeMutablePointer<T>?
init() {
object = UnsafeMutablePointer<T>(nil)
}
}
Nichts scheint zu funktionieren, weil Compiler irgendwie nicht den Typ
Durch die Übergabe von 'nil' im Konstruktor kann die Struktur den Typ nicht ableiten. Geben Sie einfach 'UnsafeMutablePointer (nil)' ein. Dies sollte funktionieren –
Bevor ich die Frage gestellt habe, habe ich das auch versucht. Es funktioniert auch nicht. –
Nur * optionale * Zeiger können in Swift 3 "nil" sein, z. 'var Objekt: UnsafeMutablePointer? = nil' - Aber es wäre interessant zu wissen, wie der Zeiger in Ihrem Code verwendet wird. –