Le compilateur donne l'avertissement warning: second argument of ‘int main(int, std::string*)’ should be ‘char **’ [-Wmain]
principal() std :: string au lieu de char ** pourquoi l'exclusion
lorsque je choisis de mettre en
int main(int argv, std::string a[])
au lieu de
int main(int argv, char * argc [])
Si vous pouvez trouver une raison, priez également dotell ce qui ne va pas l'approche de la chaîne. Je veux dire avec std :: string étant l'enfant de la représentation des caractères/de la chaîne de caractères, pour C++, pourquoi s'embêter avec les styles C?
AUSSI
Est-il vraiment pas pirater autour de la mise en œuvre standard?
Parce que 'main()' n'est pas autorisé à avoir un paramètre 'std :: string' dans le code conforme aux normes. Voir [ici] (http://en.wikipedia.org/wiki/Main_function). – juanchopanza
Alerte spoiler: Les noms "argv" et "argc" signifient en fait * quelque chose, et il y a une raison pour laquelle ils sont habituellement utilisés dans un ordre spécifique. –
"Y at-il une raison pour laquelle le compilateur donne l'avertissement" - Eh bien, qu'en pensez-vous? Le compilateur émet des avertissements juste pour le plaisir, sans aucune raison, juste pour vous ennuyer? (vous le méritez, mais quand même ...) –