Dans mon projet en cours dans le fichier ViewController.m, je suis en cours d'exécution de la méthode:les « multiples Defeating méthodes nommées « xxx: » trouvé » erreur
[[connection writer] writeData: data];
Il retourne l'avertissement:
warning: multiple methods named 'writeData:' found
Je tente d'appeler la méthode:
- (void) writeData: (NSData*)data
... dans TCPWriter.m. Malheureusement, il y a deux autres méthodes writeData
- (void)writeData:(NSData *)data;
... dans NSFileHandle.h et ...
- (BOOL)writeData:(NSData *)data
... à NSURLHandle.h. Ceci est particulièrement déroutant pour moi car [conn writer]
devrait renvoyer la classe TCPWriter
et cette classe devrait appeler la méthode correcte writeData
. En outre, je ne suis même pas complètement sûr que NSFileHandle.h et NSURLHandle.h sont même inclus dans l'une des bibliothèques incluses dans ViewController.h, plutôt que dans une partie différente du projet.
Comment est-ce que je peux montrer au compilateur quelle méthode writeData
je veux appeler et pourquoi cette erreur se produit-elle?
Je n'avais pas réalisé qu'il renvoyait un ID par défaut lorsque le fichier n'était pas importé explicitement. Merci! – Holtorf
Activez les avertissements et vous n'aurez pas à vous demander. Autres indicateurs de liens: -Wall, et activer autant d'autres, y compris Traiter les avertissements comme des erreurs. –