Appel d'une méthode au sein de sa propre classe
remooz
Membre
Voici mon problème.
Par exemple, j'ai une classe Toto
Est-ce la bonne manière pour appeler la méthode Init ?
Merci par avance pour votre aide.
Par exemple, j'ai une classe Toto
@implementation Toto<br />{}<br /><br />-(int) Init:(int)i_flag<br />{<br /> // execution<br />}<br /><br />-(void) MethodeA:(int)x with:(int)y<br />{<br /> int i_test;<br /><br /> i_test = [Init:10];<br />}
Est-ce la bonne manière pour appeler la méthode Init ?
Merci par avance pour votre aide.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
(évite les majuscule en début de méthode)
Il faut aussi éviter d'utiliser un nom de méthode comme Init, ce qui peut porter à confusion avec le init officiel.
Plus aucune erreur.
Pour quelles raisons me conseilles-tu de ne pas mettre de majuscule aux méthodes.
Je ne vois pas en quoi c'est gênant, c'est ma norme de codage.
En programmation objet on envoie des messages.
Dans le cas que tu envisages tu envoies ce message à l'instance elle-même, ce qui est le rôle de l'identificateur self
i_test=[self nomDeLaMethode:10];
C'est la convention générale sous objective-C, respectée par les développeurs :
Les majuscules débutent les noms des classes,
Les macros, énumérations, ... débutent par des préfixes en majuscules,
Les méthodes et variables d'instances débutent par une minuscule ,
Dans un nom composé on introduit comme séparateurs des majuscules au début de chaque nom plutà¶t que des underscore _
Les macros sont en majuscules, mais les énumérations et les constantes le sont rarement dans Cocoa...
Oui, autant pour moi, les macros, énumérations, ... débutent par des préfixes en majuscules.