Questions marquées «c++-standard-library»

Dans le langage de programmation C ++, la bibliothèque standard C ++ est une collection de classes et de fonctions, qui peuvent ou non être écrites dans le langage de base, et font partie de C ++

25
Comment convertir std :: string en minuscules?
Je veux convertir un std::stringen minuscule. Je connais la fonction tolower(), mais dans le passé, j'ai eu des problèmes avec cette fonction et ce n'est pas idéal de toute façon car l'utilisation avec un std::stringnécessiterait une itération sur chaque caractère. Existe-t-il une alternative qui fonctionne à 100% du temps?



9
Valarray C ++ vs vecteur
J'aime beaucoup les vecteurs. Ils sont astucieux et rapides. Mais je sais que cette chose appelée valarray existe. Pourquoi utiliser un valarray au lieu d'un vecteur? Je sais que les valarrays contiennent du sucre syntaxique, mais à part ça, quand sont-ils utiles?





1
Pourquoi le vecteur <bool> :: const_reference de libc ++ n'est-il pas booléen?
Section 23.3.7 Classe vector&lt;bool&gt;[vector.bool], paragraphe 1 stipule: template &lt;class Allocator&gt; class vector&lt;bool, Allocator&gt; { public: // types: typedef bool const_reference; ... Cependant, ce programme ne parvient pas à se compiler lors de l'utilisation de libc ++: #include &lt;vector&gt; #include &lt;type_traits&gt; int main() { static_assert(std::is_same&lt;std::vector&lt;bool&gt;::const_reference, bool&gt;{}, "?"); } De plus, je …


4
Les fonctionnalités expérimentales du C ++ moderne sont-elles fiables pour les projets à long terme?
J'ai un projet qui utilise actuellement C ++ 11/14, mais il nécessite quelque chose comme std::filesystem, qui n'est disponible qu'en C ++ 17, et par conséquent je n'ai pas la chance de l'utiliser actuellement. Je vois, cependant, qu'il est disponible dans mon compilateur actuel en tant que std::experimental::filesystem. Est-ce une …

2
Pourquoi operator! = Est-il supprimé en C ++ 20 pour de nombreux types de bibliothèques standard?
Selon cppreference , std::type_info::operator!=est supprimé avec C ++ 20, cependant, std::type_info::operator==reste apparemment. Quel est le raisonnement derrière? Je pourrais être d'accord pour comparer l'inégalité comme étant dénuée de sens, mais alors comparer pour l'égalité serait tout aussi insignifiant, non? De même, operator!=de nombreux autres types de bibliothèques standard, y compris …




En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.