Bonjour,
Je voudrais savoir ce qui peut motiver que la valeur de retour d'une
fonction (membre ou non) soit constante, dans le cas où on renvoit une
valeur (pas de référence ni de pointeur).
Par exemple :
--
class A;
A f1()
{
A a;
// faire quelque chose
return a;
}
A const f2()
{
A a;
//
return a;
}
--
Dans quels cas est-il justifié d'utiliser f2 (la version const) ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Marc Bourguet
Julien Lamy writes:
Bonjour, Je voudrais savoir ce qui peut motiver que la valeur de retour d'une fonction (membre ou non) soit constante, dans le cas où on renvoit une valeur (pas de référence ni de pointeur). Par exemple : -- class A; A f1() { A a; // faire quelque chose return a; } A const f2() { A a; // return a; } -- Dans quels cas est-il justifié d'utiliser f2 (la version const) ?
Ce n'est pas tellement idiomatique de le faire. Ca permet d'interdire d'appler les membres non const de A. Par exemple
f2().unMembreNonConst(...);
et meme,
f2() = ....;
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
Bonjour,
Je voudrais savoir ce qui peut motiver que la valeur de retour d'une
fonction (membre ou non) soit constante, dans le cas où on renvoit une
valeur (pas de référence ni de pointeur).
Par exemple :
--
class A;
A f1()
{
A a;
// faire quelque chose
return a;
}
A const f2()
{
A a;
//
return a;
}
--
Dans quels cas est-il justifié d'utiliser f2 (la version const) ?
Ce n'est pas tellement idiomatique de le faire. Ca permet d'interdire
d'appler les membres non const de A. Par exemple
f2().unMembreNonConst(...);
et meme,
f2() = ....;
A+
--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Bonjour, Je voudrais savoir ce qui peut motiver que la valeur de retour d'une fonction (membre ou non) soit constante, dans le cas où on renvoit une valeur (pas de référence ni de pointeur). Par exemple : -- class A; A f1() { A a; // faire quelque chose return a; } A const f2() { A a; // return a; } -- Dans quels cas est-il justifié d'utiliser f2 (la version const) ?
Ce n'est pas tellement idiomatique de le faire. Ca permet d'interdire d'appler les membres non const de A. Par exemple
f2().unMembreNonConst(...);
et meme,
f2() = ....;
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org