80 votes

Comment vérifier si une chaîne std::string est définie ou non ?

Si vous utilisez un , je peux l’initialiser et vérifier plus tard s’il est défini en effectuant une comparaison. Comment faire la même chose pour un ``? Comment vérifier si la chaîne est définie ou non?

ÉDITER: Que se passe-t-il si la chaîne sur laquelle j’ai défini est également vide ? Dois-je utiliser un indicateur supplémentaire pour vérifier si le `` est défini ou non ?

134voto

GManNickG Points 155079

Utilisation ``:

22voto

James McNellis Points 193607

Vous ne pouvez pas; du moins pas de la même manière que vous pouvez tester si un pointeur est ``.

Un objet est toujours initialisé et contient toujours une chaîne ; son contenu par défaut est une chaîne vide ().

Vous pouvez tester le vide (en utilisant ou).

5voto

Employed Russian Points 50479

Il n’y a pas d’état « non défini » pour ``, il est toujours défini sur quelque chose.

2voto

verisimilidude Points 539

Le constructeur par défaut de std::string renvoie toujours un objet défini sur une chaîne null.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X