fonction avec () vs []
yodark
Membre
bonjour à tous,
Petite question j'ai trouvé sur le net une fonction se présentant ainsi
CGFloat RadiansToDegrees(CGFloat radians) {return radians * 180 / M_PI;};
pour l'appeller j'utilise des parenthèses rondes RadiansToDegrees(asin(-y/hyp))
Ma question est dans quel cas on utilise des parenthèses rondes pour appeller des fonction ?
Quel différence entre [self RadiansToDegrees:radian] ?
dans quel cas utiliser un type de fonction avec parenthèses rondes et dans quel cas utiliser les carrés?
Petite question j'ai trouvé sur le net une fonction se présentant ainsi
CGFloat RadiansToDegrees(CGFloat radians) {return radians * 180 / M_PI;};
pour l'appeller j'utilise des parenthèses rondes RadiansToDegrees(asin(-y/hyp))
Ma question est dans quel cas on utilise des parenthèses rondes pour appeller des fonction ?
Quel différence entre [self RadiansToDegrees:radian] ?
dans quel cas utiliser un type de fonction avec parenthèses rondes et dans quel cas utiliser les carrés?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Les fonctions à appeler avec les crochets sont les méthodes d'objets
Les autres sont des fonctions C classiques
Appel d'une fonction C.
Soit cette fonction appartient à l'une des bibliothèques du C, soit tu écris le code de cette fonction C dans ton code.
Il s'agit d'un message Objective-C .. que le compilateur traduit par une syntaxe avec parenthèses dans la phase de précompilation. Cette écriture entre crochets n'est qu'une présentation élégante pour des fonctions C
L'un ou l'autre marche dans ton exemple. Ce n'est qu'une question de "bonne présentation" de code, et cela varie selon les choix personnels/groupes.
L'avantage de l'écrire en fonction C c'est qu'on peut l'utiliser facilement dans différentes classes sans avoir à réécrire le code dans chaque fichier d'implémentation. Â