Ich verwende die Bridging Header-Funktion des Swift-Compilers, um eine C-Funktion aufzurufen, die Speicher unter Verwendung von malloc()
zuweist. Es gibt dann einen Zeiger auf diesen Speicher zurück. Der Funktionsprototyp ist so etwas wie:Free C-malloc() 'Speicher in Swift?
char *the_function(const char *);
In Swift, ich benutze es wie folgt aus:
var ret = the_function(("something" as NSString).UTF8String)
let val = String.fromCString(ret)!
Verzeihen Sie meine Unwissenheit über Swift aber in der Regel in C, wenn the_function() ist malloc'ing Speicher und es zurückgeben, muss jemand anderes() es irgendwann befreien.
Wird dies von Swift irgendwie gehandhabt oder lecke ich Speicher in diesem Beispiel?
Vielen Dank im Voraus.
macht Sinn vereinfacht werden, danke! – Christopher