salut
merci ,donc si j'ai bien compris, on a :
 
a)
Code :
 - void toto( std::string & s = std::string() );
 
  | 
 
=> ça ne marche pas, mais je ne ne comprend pas vraiment pourquoi car les objets sont de même type ? apparement un 'bug' du C++
 
b)
Code :
 - void toto(const std::string & s = std::string() );
 
  | 
 
marche et crée un objet temporaire de type std::string si on ne passe pas d'argument à la fonction toto(). Par contre je ne comprend pas bien pourquoi le 'const' fait en sorte que ça fonctionne
 
et c)
Code :
 - void toto(const std::string & s = "salut" );
 
  | 
...marcherait avec un gogo gadgeto transtypage  ... qui met 'salut' dans une std::string ?
 
c'est ça ?
 
merci