Simplifier une ligne de push_back (string) répétitifs - C++ - Programmation
Marsh Posté le 08-11-2016 à 20:19:25
Code :
|
?
ou plus simple encore :
Code :
|
Marsh Posté le 08-11-2016 à 23:57:32
Si tu as besoin de faire des concaténations successives dans une string, tu peux utiliser la classe ostringstream qui permet d'utiliser l'opérateur << consécutivement:
Code :
|
Ça a l'avantage de souvent être plus joli syntaxiquement qu'un paquet d'append successifs, et ça permet aussi de concaténer facilement d'autres types que les strings.
Marsh Posté le 09-11-2016 à 11:22:03
Merci les gars
final est un string. Pour le coup .append me va bien car je suis pas obligé de créer un flux (ostringstream)
.str() c'est comme .to_string() ?
Plus haut dans mon programme je suis obligé de faire un .to_string() sur un string pourtant, pour pouvoir le concaténer ensuite avec un +=
Avec un flux et l'opérateur << jepeux concaténer des int ? Du genre (pour un int a qui fait 10) si je fais << 10 ça va faire 1010 ?
Marsh Posté le 09-11-2016 à 11:49:53
Lt Ripley a écrit : Merci les gars |
Oui avec ostringstream tu peux concaténer int, bool, string sans te soucier d'avoir à appeler un to_string() au préalable.
(Par contre je ne comprends pas pourquoi tu dois appeler to_string sur un string )
Marsh Posté le 09-11-2016 à 12:20:05
C'est après ça que je dois appeler to_string (sur binStr)
Code :
|
Sinon j'ai ça (je viens de le refaire) : error: no match for 'operator+=' (operand types are 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}' and 'std::bitset<7u>')|
Quand je fais motBin += binStr
Marsh Posté le 22-11-2016 à 17:44:56
On peut aussi faire ça sur le string (nommé final) je n'y ai pas pensé
Code :
|
Marsh Posté le 08-11-2016 à 16:26:49
Salut !
Je voudrais savoir si je peux simplifier cette ligne :
Thank you
Message édité par Lt Ripley le 29-11-2016 à 14:18:35