C ++ 14 est le nom du standard C ++, approuvé en 2014. Il s'appuie sur le précédent standard C ++ 11, améliorant le langage de base et la bibliothèque standard et ajoutant quelques fonctionnalités.
L' std::sortalgorithme (et ses cousins std::partial_sortet std::nth_element) de la bibliothèque standard C ++ est dans la plupart des implémentations une fusion compliquée et hybride d'algorithmes de tri plus élémentaires , tels que le tri par sélection, le tri par insertion, le tri rapide, le tri par fusion ou le tri …
Il est parfois affirmé que C ++ 11/14 peut vous aider à améliorer vos performances même lorsque vous compilez simplement du code C ++ 98. La justification se situe généralement dans le sens de la sémantique de déplacement, car dans certains cas, les constructeurs rvalue sont générés automatiquement ou font …
Il y a un problème plutôt idiot avec le nombre pi en C et C ++. Autant que je sache, M_PIdéfini dans math.hn'est requis par aucune norme. Les nouvelles normes C ++ ont introduit beaucoup de mathématiques compliquées dans la bibliothèque standard - des fonctions hyperboliques std::hermiteet std::cyl_bessel_idifférents générateurs de …
Est-il possible de capturer par référence const dans une expression lambda? Je souhaite que le devoir indiqué ci-dessous échoue, par exemple: #include <cstdlib> #include <vector> #include <string> #include <algorithm> using namespace std; int main() { string strings[] = { "hello", "world" }; static const size_t num_strings = sizeof(strings)/sizeof(strings[0]); string best_string …
На этот вопрос есть ответы на Stack Overflow на русском : Конструкция decltype (auto) Dans C ++ 14, l' decltype(auto)idiome est introduit. En règle générale, son utilisation est d' autoriser les autodéclarations à utiliser les decltyperègles sur l'expression donnée . En recherchant des exemples de "bonne" utilisation de l'idiome, je …
J'ai regardé le discours de Walter Brown au Cppcon14 sur la programmation de modèles modernes ( Partie I , Partie II ) où il a présenté sa void_ttechnique SFINAE. Exemple: étant donné un modèle de variable simple qui évalue voidsi tous les arguments du modèle sont bien formés: template< class …
Avec la sortie de GCC 4.8.0, nous avons un compilateur qui prend en charge la déduction automatique du type de retour, qui fait partie de C ++ 14. Avec -std=c++1y, je peux faire ceci: auto foo() { //deduced to be int return 5; } Ma question est la suivante: quand …
Traditionnellement, le moyen standard et portable d'éviter les inclusions d'en-têtes multiples en C ++ était / consiste à utiliser le #ifndef - #define - #endifschéma de directives pré-compilateur également appelé schéma de macro-garde (voir l'extrait de code ci-dessous). #ifndef MY_HEADER_HPP #define MY_HEADER_HPP ... #endif Dans la plupart des implémentations / …
En répondant à une autre question, je suis tombé sur des formulations légèrement différentes pour std::vector::erase()et std::deque::erase(). Voici ce que dit C ++ 14 std::deque::erase( [deque.modifiers]/4-6, c'est moi qui souligne): Effets: ... Complexité: Le nombre d'appels au destructeur est le même que le nombre d'éléments effacés, mais le nombre d'appels …
At std::make_unique- il des avantages d'efficacité comme std::make_shared? Par rapport à la construction manuelle std::unique_ptr: std::make_unique<int>(1); // vs std::unique_ptr<int>(new int(1));
Comment fonctionne lambda générique ( automot-clé comme type d'argument) dans la norme C ++ 14? Est-il basé sur des modèles C ++ où pour chaque type d'argument différent, le compilateur génère une nouvelle fonction avec le même corps mais des types remplacés (polymorphisme à la compilation) ou est-il plus similaire …
Avec presque tout le code que j'écris, je suis souvent confronté à des problèmes de réduction d'ensembles sur des collections qui finissent par se retrouver avec des conditions naïves «si» à l'intérieur. Voici un exemple simple: for(int i=0; i<myCollection.size(); i++) { if (myCollection[i] == SOMETHING) { DoStuff(); } } Avec …
En C ++ 14, les conteneurs associatifs semblent avoir changé depuis C ++ 11 - [associative.reqmts] / 13 dit: Les modèles de fonction membre find, count, lower_bound, upper_boundet equal_rangene participent pas à la résolution de surcharge sauf si le type Compare::is_transparentexiste. Quel est le but de rendre un comparateur "transparent"? …
Le Comité des normes C ++ a tendance à hésiter à ajouter de nouveaux mots-clés au langage, mais avec C ++ 11, ce n'était pas le cas. Quelques exemples: constexpr decltype thread_local auto // New usage noexcept nullptr static_assert alignof alignas Y a-t-il de nouveaux mots clés introduits avec C …
c ++ 14 introduit des lambdas génériques qui ont permis d'écrire ce qui suit: auto func = [](auto a, auto b){ return a + b; }; auto Foo = func(2, 5); auto Bar = func("hello", "world"); Il est très clair que ce lambda générique funcfonctionne exactement comme une fonction basée …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.