J'essaie de comprendre ce que cela fait dans chaque cas. Quelqu'un peut-il expliquer ce que le premier cas fait en détail et comment il diffère de la seconde? Merci :) //En quoi ces déclarations ObjC sont-elles différentes: qu'est-ce que cela fait vraiment?
//declare in first case
NSManagedObjectModel *mom();
NSManagedObjectModel *mom() {
static NSManagedObjectModel *mom = nil;
//implementation goes here...
return mom;
}
contre
//no declaration in second case
- (NSManagedObjectModel *) mom {
static NSManagedObjectModel *mom = nil;
//implementation goes here...
return mom;
}
Eh bien, le premier échantillon de code n'est pas valide, pour les démarreurs. Aussi, l'un semble être une fonction et l'autre une méthode, donc la différence n'est pas "aucune déclaration". Les méthodes peuvent être déclarées comme les fonctions peuvent le faire. – Chuck
@Chuck sûr que c'est; c'est une fonction C appelée 'mom' qui renvoie un' NSManagedObjectModel * '. –
Était-ce correct d'implémenter une fonction C sans parenthèses ??? – Yuji