ARC interdit Objective-C des objets dans des structures ou des syndicats, malgré le marquage du fichier -fno-objc-d'arc? Pourquoi est-ce donc?
J'ai eu l'hypothèse que, si vous le marquez -fno-objc-arc vous n'avez pas cette restriction.
ARC interdit Objective-C des objets dans des structures ou des syndicats, malgré le marquage du fichier -fno-objc-d'arc? Pourquoi est-ce donc?
J'ai eu l'hypothèse que, si vous le marquez -fno-objc-arc vous n'avez pas cette restriction.
Si vous avez reçu ce message essayez __dangereuse_consignes. Il n'est sûr que, si les objets dans la struct sont des consignes. Exemple: Si vous utilisez OpenFeint avec l'ARC de la Classe OFBragDelegateStrings dit cette erreur dans une struct.
typedef struct OFBragDelegateStrings
{
NSString* prepopulatedText;
NSString* originalMessage;
} OFBragDelegateStrings;
pour
typedef struct OFBragDelegateStrings
{
__unsafe_unretained NSString* prepopulatedText;
__unsafe_unretained NSString* originalMessage;
} OFBragDelegateStrings;
C'est parce que l'arc ne peut pas le suivi d'objets dans des structures ou des syndicats (depuis qu'ils sont à ce point de la plaine C les pointeurs).
Même si vous avez marqué le fichier/classe en question, -fno-objc-arc
il est toujours possible de passer un objet contrôlé par l'arc comme paramètre, ce qui serait le plus susceptible d'entraîner une fuite de mémoire.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.