Ich habe eine Weile mit der iPhone-Entwicklung herumgespielt, und obwohl es sich ein bisschen umständlich anfühlt, wenn man ein "Hardcore"-.NET-Entwickler ist, ist es gar nicht so schlimm, wenn man sich erst einmal daran gewöhnt hat.
In jedem Buch, das ich über Objective-C lese, ist nur die Rede von retain
/ release
(Referenzzählung) für die Speicherverwaltung. Als altgedienter C/C++-Entwickler kommt es mir seltsam vor, dass die "normale" Zuweisung mit malloc()
y free()
wird nur in einigen Fußnoten erwähnt.
Ich weiß, dass malloc()
y free()
Arbeit in Objective-C, aber ich bin neugierig, ob es gängige Praxis ist oder nicht. Immerhin, wenn ich ein Array von 100 Ganzzahlen zuweisen möchten, scheint es, dass dies der effizienteste Weg, es zu tun ist:
int *array = malloc(sizeof(int) * 100);
memset(array,0,sizeof(int) * 100);
// use the array
free(array);
Ist dies tatsächlich der beste Weg, oder sollte ich einfache C-Speicherverwaltung vermeiden?