j'utilise shareKit pour me programme.
mais dans le FBConnectGlobal, il y a quelques avertissements,
NSMutableArray* FBCreateNonRetainingArray() {
CFArrayCallBacks callbacks = kCFTypeArrayCallBacks;
callbacks.retain = RetainNoOp;
callbacks.release = ReleaseNoOp;
return (NSMutableArray*)CFArrayCreateMutable(nil, 0, &callbacks);
}
comme cette méthode, il avertit: "Aucun prototype précédent pour la fonction FBCreateNonRetainingArray"
Pour clarifier la réponse d'Eric Dchao ci-dessus, quelqu'un sur Facebook n'a apparemment pas mis de "statique" devant ce BOOL?
Quoi qu'il en soit, changer de
BOOL FBIsDeviceIPad() {
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
return YES;
}
#endif
return NO;
}
pour ça
static BOOL FBIsDeviceIPad() {
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
return YES;
}
#endif
return NO;
}
réparé pour moi.
Selon la norme c, déclarer le prototype comme
NSMutableArray* FBCreateNonRetainingArray(void);
// ---------------> ^^^^
// Yes, with the void as the parameter
résout le problème.
[~ # ~] mise à jour [~ # ~] : désactiver les avertissements n'est pas une bonne solution, consultez la réponse de @Derek Bredensteiner.
Dans Xcode 4, accédez aux paramètres de construction de votre projet. Recherchez "prototype". Il devrait y avoir une option appelée "Prototypes de fonction manquants"; le désactiver.
via ici
Est-ce une fonction globale? Ajoutez "statique" s'il n'est utilisé que dans le fichier courant.
La raison possible est la suivante:
pas de prototype précédent pour `foo '
Cela signifie que GCC a trouvé une définition de fonction globale sans voir de prototype pour la fonction. Si une fonction est utilisée dans plusieurs fichiers, il devrait y avoir un prototype pour elle dans un fichier d'en-tête quelque part. Cela empêche les fonctions et leurs utilisations de se désynchroniser
Si la fonction n'est utilisée que dans ce fichier, rendez-la statique pour garantir qu'elle ne sera jamais utilisée en dehors de ce fichier et documentez qu'il s'agit d'une fonction locale