A propos des fonctions inlines en C++

cs_rachid777 Messages postés 12 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 17 mars 2004 - 13 févr. 2004 à 17:33
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 15 févr. 2004 à 15:53
Rachid777

Salut,
j'aimerais savoir si on a le droit d'utiliser des fonctions récursives avec l'option inline, est-ce que ça marche toujours ou juste par coup de chance.
Merci d'avance :-)

5 réponses

cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
13 févr. 2004 à 19:10
oui tu peut, c quoi comme fonction?
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
13 févr. 2004 à 19:17
Tu peux avec certains compilateurs comme gcc ou celui de Visual C++ pour ne citer qu'eux, mais il ne faut pas que la récursion soit trop importante non plus !

DarK Sidious

[Responsable de la rubrique API et responsable VB du site www.ProgOtoP.com]
0
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
13 févr. 2004 à 19:24
faut pas non plus qu'elle ai trop de parametres

ton compilo peut decider de ne pas l'inliner
0
cs_rachid777 Messages postés 12 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 17 mars 2004
14 févr. 2004 à 14:10
Rachid777

salut,
merci pour les réponses, en fait j'ai vu dans un cours en C++ que c'était interdit pourtant j'ai essayé de faire une fonction factorielle de n, qui marche apparemment :
inline unsigned long factI(unsigned long n)
{
return (n > 1) ? n * factI(n - 1) : 1;
}

merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
15 févr. 2004 à 15:53
Lorsque le compilateur ne peux pas faire de ta fonction une fonction inline, il l'a remplace par une fonction "classique", donc ca marche quand même, mais tu perd la rapidité des fonctions inline !

DarK Sidious

[Responsable de la rubrique API et responsable VB du site www.ProgOtoP.com]
0
Rejoignez-nous