Questions marquées «c++17»

C ++ 17 est le nom du standard C ++ approuvé en 2017. Il s'appuie sur l'ancien standard C ++ 14, améliorant le langage de base et la bibliothèque standard, et ajoutant quelques nouvelles fonctionnalités de langage.


6
Pourquoi utiliser std :: make_unique en C ++ 17?
Pour autant que je sache, C ++ 14 a été introduit std::make_uniquecar, en raison de la non-spécification de l'ordre d'évaluation des paramètres, ce n'était pas sûr: f(std::unique_ptr<MyClass>(new MyClass(param)), g()); // Syntax A (Explication: si l'évaluation alloue d'abord la mémoire pour le pointeur brut, puis appelle g()et une exception est levée …
96 c++  c++17  unique-ptr 

4
experimental :: erreur de l'éditeur de liens du système de fichiers
J'essaye d'utiliser les nouvelles fonctionnalités de c ++ 1z pour le développement dans gcc 6.0. Si j'essaye ce petit exemple: #include <iostream> #include <experimental/filesystem> namespace fs = std::experimental::filesystem; int main() { fs::path p1 = "/home/pete/checkit"; std::cout << "p1 = " << p1 << std::endl; } J'ai eu: / opt / …
94 c++  gcc  c++17 


1
Comment fonctionne l'élision de la copie garantie?
Lors de la réunion des normes Oulu ISO C ++ 2016, une proposition intitulée Élision de la copie garantie grâce à des catégories de valeurs simplifiées a été votée en C ++ 17 par le comité des normes. Comment fonctionne exactement l'élision de la copie garantie? Couvre-t-il certains cas où …

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 remove_reference ne fonctionne-t-il pas sur les fonctions?
Ran dans quelque chose d'étrange lors de la métaprogrammation de modèle l'autre jour. Cela revient essentiellement à cette affirmation qui ne passe pas (comme je m'y attendais). static_assert(std::is_same_v<void(), std::remove_reference_t<void()&>>); Au début, je pensais que je faisais une erreur syntaxique en définissant une référence de fonction, mais cette assertion passe, montrant …
38 c++  templates  types  c++17 





3
Comment puis-je créer un produit cartésien de listes de types en C ++?
Explicite. Fondamentalement, disons que j'ai des listes de types comme ceci: using type_list_1 = type_list<int, somestructA>; using type_list_2 = type_list<somestructB>; using type_list_3 = type_list<double, short>; Ils peuvent être des nombres variés de listes de types. Comment obtenir une liste de types de produits cartésiens? result = type_list< type_list<int, somestructB, double>, …

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.