Le partage implicite et l'UTF-16, c'est déjà deux choses que je voudrais surtout pas dans le standard. Qu'on puisse avoir des strings UTF-16, très bien, mais que ça soit un défault, non merci. C'est surement intéressant pour certains domaines, mais dans beaucoup d'autres, c'est un surcoût inutile.
Concernant les algorithmes sur std::string, il est clair que la STL n'est pas très riche, même si une majorité s'écrivent sur une ligne(split() est un peu chiant) Par contre, rien n'empêche d'ajouter des algorithmes tout en utilisant std::string (ce que fait boost::string_algo et boost::regexp). Pour la majorité de ces traitements, la string n'est qu'un conteneur de caractères, et peut / doit être traité via l'interface standard iterator / range, les mêmes traitements pouvant donc être utilisé par d'autres interfaces (tel que QString par exemple)). (Toujours la différence entre objet et générique)
[^] # Re: Boost ? c'est quoi ?
Posté par zul . En réponse à la dépêche Sortie de Boost 1.46. Évalué à 1.
Le partage implicite et l'UTF-16, c'est déjà deux choses que je voudrais surtout pas dans le standard. Qu'on puisse avoir des strings UTF-16, très bien, mais que ça soit un défault, non merci. C'est surement intéressant pour certains domaines, mais dans beaucoup d'autres, c'est un surcoût inutile.
Concernant les algorithmes sur std::string, il est clair que la STL n'est pas très riche, même si une majorité s'écrivent sur une ligne(split() est un peu chiant) Par contre, rien n'empêche d'ajouter des algorithmes tout en utilisant std::string (ce que fait boost::string_algo et boost::regexp). Pour la majorité de ces traitements, la string n'est qu'un conteneur de caractères, et peut / doit être traité via l'interface standard iterator / range, les mêmes traitements pouvant donc être utilisé par d'autres interfaces (tel que QString par exemple)). (Toujours la différence entre objet et générique)