Questions marquées «c++11»

100
Hachage de chaîne au moment de la compilation

J'ai lu à quelques endroits différents qu'en utilisant les nouveaux littéraux de chaîne de C ++ 11, il pourrait être possible de calculer le hachage d'une chaîne au moment de la compilation. Cependant, personne ne semble prêt à sortir et à dire que ce sera possible ou comment cela se ferait. Est-ce...

99
Fonction Sequence-zip pour C ++ 11?

Avec la nouvelle boucle for basée sur la plage, nous pouvons écrire du code comme for(auto x: Y) {} Quelle IMO est une énorme amélioration par rapport (par exemple) for(std::vector<int>::iterator x=Y.begin(); x!=Y.end(); ++x) {} Peut-il être utilisé pour boucler sur deux boucles simultanées,...

98
Pourquoi copions-nous puis déplaçons-nous?

J'ai vu du code quelque part dans lequel quelqu'un a décidé de copier un objet et de le déplacer par la suite vers une donnée membre d'une classe. Cela m'a laissé dans la confusion en ce sens que je pensais que tout l'intérêt de bouger était d'éviter de copier. Voici l'exemple: struct S {...

98
Passer un std :: array de taille inconnue à une fonction

En C ++ 11, comment pourrais-je écrire une fonction (ou une méthode) qui prend un std :: array de type connu mais de taille inconnue? // made up example void mulArray(std::array<int, ?>& arr, const int multiplier) { for(auto& e : arr) { e *= multiplier; } } // lets imagine these...

98
Comment std :: function est-il implémenté?

Selon les sources que j'ai trouvées, une expression lambda est essentiellement implémentée par le compilateur créant une classe avec un opérateur d'appel de fonction surchargé et les variables référencées en tant que membres. Cela suggère que la taille des expressions lambda varie et que, compte...

97
Est-il sûr de lier des objets C ++ 17, C ++ 14 et C ++ 11

Supposons que j'ai trois objets compilés, tous produits par le même compilateur / version : A a été compilé avec le standard C ++ 11 B a été compilé avec le standard C ++ 14 C a été compilé avec le standard C ++ 17 Pour plus de simplicité, supposons que tous les en-têtes ont été écrits en C ++ 11,...