9
votes

Différence entre objet et nsobject

J'apprends Objective-C et comme je peux le constater, dans certains tutoriels, ils utilisent des objets (importés d'objc / objet.h) et dans d'autres, je vois l'utilisation de NsObject (importé de Foundation / NsObject.h), Mais quelles sont les principales différences entre elles?

Cordialement.


2 commentaires

Pouvez-vous nous donner un lien vers l'un de ces tutoriels qui utilise un objet?


Voir: TENON.com/Products/CodeBuilder/Objective-c.shtmlled


3 Réponses :


6
votes

objectif-c est juste la langue.

Les cadres de cacao utilisent la classe de base NsObject comme classe racine de la hiérarchie. D'autres implémentations utilisent leurs propres classes racines, dans votre cas la classe d'objets.


1 commentaires

Je n'utilise pas de cacao, car je suis sur Linux, puis j'utilise Gnustep avec GCC. ;)



4
votes

NsObject contient toute l'infrastructure du cadre de cacao. En d'autres termes, il est conforme à plusieurs protocoles que l'objet ne répond pas et répondra à certaines méthodes que l'objet ne sera pas. Voir spécifiquement NsObject Classe Référence < / a> et


1 commentaires

Je vais jeter un coup d'œil à cette référence. Merci.



6
votes

Vous devez ignorer l'objet.

Objective-C permet de multiples classes racines. L'objet est une classe racine qui prédate NsObject. Ce n'est jamais quelque chose que vous voudriez utiliser. Il n'est pertinent que lorsque quelque chose d'une manière ou d'une autre interagit déjà avec l'objet, vous devez donc y faire face. C'est très rare.

objet ne met pas en œuvre -Retain et -Release , par exemple.


2 commentaires

Ensuite, je peux importer NsObject et je n'ai aucun problème avec la syntaxe?


Pas tout à fait sûr de ce que vous voulez dire, mais probablement oui. Vous voudrez peut-être aussi ignorer le tutoriel que vous avez lié qui utilise un objet. Je pense que vous aurez du mal à trouver des autres qui y réfléchissent.