PDA

Visualizza la versione completa : [Objective-C] Problemi con dealloc


fermat
25-12-2011, 11:17
salve e buon natale!!

è da ieri che combatto con un problema.
sia guardando sui libri che sul web ho visto che per usare dealloca basta mettere questo nella classe:


#import "Scan.h"

@implementation Scan

...............

- (void)dealloc {
NSLog(@"I am being deallocated");
[super dealloc]; // ERRORE
}


@end

e poi richiamare [oggetto realease] dove viene creato l'oggetto.
il problema è che mi da questo errore alla riga commentata:
ARC forbids explicit message send of 'dealloc'
avete qualche indicazione???

oregon
25-12-2011, 11:21
Leggi questo

http://www.iphonedevsdk.com/forum/iphone-sdk-development/86273-helloworld.html

fermat
25-12-2011, 11:42
grazie per il link.
ho dato una letta.
li c'è scritto poi che il problema deriva dal fatto che si usa una versione beta di iOS 5 SDK.
io però sto creando un programma per Mac e nn per iPhone.

ancora più sotto si parla di pre-released di Xcode e SDK.
io però nn sto usando una pre-released.

detto ciò se c'è ancora altro che nn ho capito.

oregon
25-12-2011, 11:49
Quali versioni usi di quali prodotti?

fermat
25-12-2011, 11:59
Mac OS X Lion.
Xcode 4.2 installato e aggiornato tramite AppStore.
ho appena controllato l'esistenza di eventuali aggiornamenti e ne il software update ne l'AppStore hanno trovato qualcosa da aggiornare.
in teoria dovrebbe essere tutto in ordine.

oregon
25-12-2011, 12:07
Da quanto so (non per esperienza diretta) se usi l'ARC allora non puoi gestire le deallocazioni perché fa tutto il compilatore.

Tuttavia puoi disabilitare l'ARC tramite le

"Build Settings"

disabilitando la voce

"Objective-C Automatic Reference Counting"

fermat
25-12-2011, 17:09
ah ok, una sorta di Garbage Collector insomma....
bho allora nn saprei cosa sia meglio.
qualcuno ha qualche suggerimento in merito?
cioè, basta quello che fa il compilatore o è meglio gestire il tutto a mano??

Loading