j'ai besoin d'avoir un vector vide par defaut dans un constructor.
Ai-je le droit de faire un truc comme ca (ca compile avec VC++ mais je
prefere etre sur...)?
A::A(std::vector<B*>& b = std::vector<B*>());
Si oui, est-ce une bonne solution?
Sinon, quelle est la solution?
|> On 08 May 2004 21:07:20 +0200, James Kanze wrote:
|> >Tu lis trop de livres:-). D'après mes expériences, passer un |> >paramètre en référence non const signifie le plupart du |> >temps que l'auteur ne connaît pas le const.
|> Mais dans ce cas, est-ce que ça vaut vraiment le coup de |> continuer à lire le code ?..
Ce que ça vaut dépend du contrat. Si je suis payé assez pour maintenir de tel code, ça vaut le coup, oui:-).
Dans la pratique, tout dépend. Ce que j'ai essayé à signaler, c'est qu'il y a bien une lacune fréquente d'éducation à l'égard de const, je ne sais pas trop pourquoi. La plupart des développeurs ne sont pas des spécialistes C++, qui passe leur temps à étudier le langage -- c'est un outil, dont ils apprenent assez pour s'en servir, et c'est tout. Je ne m'attends donc pas qu'ils connaissent toutes les subtilités. (Je ne les connais pas moi-même, d'ailleurs.) Mais AMHA, il ne s'agit pas ici d'une subtilité, mais d'un idiome de base. Alors, j'ai du mal à comprendre pourquoi c'est si souvent ignoré, mais je constate qu'il l'est. Y compris par certains programmeurs bien compétents par ailleurs.
-- James Kanze mailto: Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France +33 1 41 89 80 93
Fabien LE LEZ <gramster@gramster.com> writes:
|> On 08 May 2004 21:07:20 +0200, James Kanze <kanze@gabi-soft.fr> wrote:
|> >Tu lis trop de livres:-). D'après mes expériences, passer un
|> >paramètre en référence non const signifie le plupart du
|> >temps que l'auteur ne connaît pas le const.
|> Mais dans ce cas, est-ce que ça vaut vraiment le coup de
|> continuer à lire le code ?..
Ce que ça vaut dépend du contrat. Si je suis payé assez pour
maintenir de tel code, ça vaut le coup, oui:-).
Dans la pratique, tout dépend. Ce que j'ai essayé à signaler,
c'est qu'il y a bien une lacune fréquente d'éducation à
l'égard de const, je ne sais pas trop pourquoi. La plupart des
développeurs ne sont pas des spécialistes C++, qui passe leur
temps à étudier le langage -- c'est un outil, dont ils apprenent
assez pour s'en servir, et c'est tout. Je ne m'attends donc pas qu'ils
connaissent toutes les subtilités. (Je ne les connais pas
moi-même, d'ailleurs.) Mais AMHA, il ne s'agit pas ici d'une
subtilité, mais d'un idiome de base. Alors, j'ai du mal à
comprendre pourquoi c'est si souvent ignoré, mais je constate qu'il
l'est. Y compris par certains programmeurs bien compétents par
ailleurs.
--
James Kanze mailto:kanze@gabi-soft.fr
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France +33 1 41 89 80 93
|> On 08 May 2004 21:07:20 +0200, James Kanze wrote:
|> >Tu lis trop de livres:-). D'après mes expériences, passer un |> >paramètre en référence non const signifie le plupart du |> >temps que l'auteur ne connaît pas le const.
|> Mais dans ce cas, est-ce que ça vaut vraiment le coup de |> continuer à lire le code ?..
Ce que ça vaut dépend du contrat. Si je suis payé assez pour maintenir de tel code, ça vaut le coup, oui:-).
Dans la pratique, tout dépend. Ce que j'ai essayé à signaler, c'est qu'il y a bien une lacune fréquente d'éducation à l'égard de const, je ne sais pas trop pourquoi. La plupart des développeurs ne sont pas des spécialistes C++, qui passe leur temps à étudier le langage -- c'est un outil, dont ils apprenent assez pour s'en servir, et c'est tout. Je ne m'attends donc pas qu'ils connaissent toutes les subtilités. (Je ne les connais pas moi-même, d'ailleurs.) Mais AMHA, il ne s'agit pas ici d'une subtilité, mais d'un idiome de base. Alors, j'ai du mal à comprendre pourquoi c'est si souvent ignoré, mais je constate qu'il l'est. Y compris par certains programmeurs bien compétents par ailleurs.
-- James Kanze mailto: Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France +33 1 41 89 80 93
Gabriel Dos Reis
James Kanze writes:
[...]
| |> Passer un paramètre en référence non constante, au | |> contraire, indique (généralement) que la fonction va modifier | |> le paramètre | | Tu lis trop de livres:-). D'après mes expériences, passer un | paramètre en référence non const signifie le plupart du temps | que l'auteur ne connaît pas le const.
J'en déduis que dans tes expériences, tu n'écris pas ou ne rencontres pas de fonctions de formattage qui prennent des flux en paramètres ;-)
-- Gaby
James Kanze <kanze@gabi-soft.fr> writes:
[...]
| |> Passer un paramètre en référence non constante, au
| |> contraire, indique (généralement) que la fonction va modifier
| |> le paramètre
|
| Tu lis trop de livres:-). D'après mes expériences, passer un
| paramètre en référence non const signifie le plupart du temps
| que l'auteur ne connaît pas le const.
J'en déduis que dans tes expériences, tu n'écris pas ou ne rencontres
pas de fonctions de formattage qui prennent des flux en paramètres ;-)
| |> Passer un paramètre en référence non constante, au | |> contraire, indique (généralement) que la fonction va modifier | |> le paramètre | | Tu lis trop de livres:-). D'après mes expériences, passer un | paramètre en référence non const signifie le plupart du temps | que l'auteur ne connaît pas le const.
J'en déduis que dans tes expériences, tu n'écris pas ou ne rencontres pas de fonctions de formattage qui prennent des flux en paramètres ;-)