Selon la norme C d'un type chaîne littérale est array of const char
const C++ avec exactitude littéraux chaîne
auto constStr = "aaa";
char* nonConstStr = constStr; //Error here, cannot convert from 'const char *' to 'char *'
char* stillNonConstStr = "aaa"; //Why I don't have error here?
Pouvez-vous me expliquer pourquoi s'il vous plaît sur la 3ème ligne je ne reçois pas une erreur?
@Rapptz Je n'arrive pas à trouver la même clause permettant la même "conversion rétrocompatibilité" dans la norme C++ 11. Je suppose qu'il a été supprimé, donc la question liée n'est pas vraiment un doublon de nos jours. – Angew
Parce qu'il est préférable de le laisser comme il a été autorisé historiquement que de casser des milliers de programmes existants. –
@Rapptz Comment une question + réponse à propos de C est-elle une copie de C++? Surtout dans une région où les deux langues diffèrent réellement. – Angew