Par exemple: int a = 12; cout << typeof(a) << endl; Production attendue:
Par exemple: int a = 12; cout << typeof(a) << endl; Production attendue:
Veuillez prendre note des mises à jour à la fin de cet article. Mise à jour: j'ai créé un projet public sur GitHub pour cette bibliothèque! J'aimerais avoir un modèle unique qui, une fois pour toutes, s'occupe de l'impression de tous les conteneurs STL via operator<<. En pseudo code, je...
Je suis assez familier avec le C ++ 11 de std::thread, std::asyncet des std::futurecomposants (voir par exemple cette réponse ), qui sont simple. Cependant, je n'arrive pas à comprendre ce qui std::promiseest, ce qu'il fait et dans quelles situations il est le mieux utilisé. Le document standard...
j'ai un cours template<size_t N, size_t M> class Matrix { // .... }; Je veux faire un typedefqui crée un Vector(vecteur de colonne) qui est équivalent à un Matrixavec des tailles N et 1. Quelque chose comme ça: typedef Matrix<N,1> Vector<N>; Ce qui produit une erreur de...
J'essaie de mettre à jour mon compilateur C ++ vers C ++ 11. J'ai cherché un peu et je suis arrivé à la conclusion que je dois utiliser le drapeau -std=c++0xou -std=gnu++0x, mais je ne sais pas beaucoup de choses sur les drapeaux. Quelqu'un peut-il m'aider? (J'utilise Ubuntu 12.04.) Voici l'erreur...
unique_ptr<T>ne permet pas la construction de copie, mais prend en charge la sémantique de déplacement. Pourtant, je peux retourner un à unique_ptr<T>partir d'une fonction et affecter la valeur retournée à une variable. #include <iostream> #include <memory> using namespace...
Lorsque j'essaie d'exécuter un makefile généré par CMake pour compiler mon programme, j'obtiens l'erreur La plage basée sur les boucles n'est pas prise en charge en mode C ++ 98. J'ai essayé d' ajouter add_definitions(-std=c++0x)à mon CMakeLists.txt, mais il n'a pas aidé. J'ai aussi essayé ça:...
На этот вопрос есть ответы на Stack Overflow на рdedом : Чем std :: unique_lock отличается от std :: lock_guard? J'ai deux cas d'utilisation. A. Je veux synchroniser l'accès par deux threads à une file d'attente. B. Je veux synchroniser l'accès de deux threads à une file d'attente et utiliser une...
Il me semble qu'avoir une "fonction qui renvoie toujours 5" brise ou dilue le sens de "appeler une fonction". Il doit y avoir une raison, ou un besoin pour cette capacité, sinon ce ne serait pas en C ++ 11. Pourquoi est-il là? // preprocessor. #define MEANING_OF_LIFE 42 // constants: const int...
L'exemple courant pour les boucles for () basées sur la plage C ++ 11 est toujours quelque chose de simple comme ceci: std::vector<int> numbers = { 1, 2, 3, 4, 5, 6, 7 }; for ( auto xyz : numbers ) { std::cout << xyz << std::endl; } Dans ce cas, xyzest un int. Mais que se...
C ++ 11 autorise les inline namespaces, dont tous les membres sont également automatiquement inclus dans l'enveloppe namespace. Je ne peux penser à aucune application utile de ceci - quelqu'un peut-il s'il vous plaît donner un exemple bref et succinct d'une situation où un inline namespaceest...
Existe-t-il un adaptateur de conteneur qui inverserait la direction des itérateurs afin que je puisse itérer sur un conteneur en sens inverse avec une boucle basée sur une plage? Avec des itérateurs explicites, je convertirais ceci: for (auto i = c.begin(); i != c.end(); ++i) { ... en cela: for...
Est-il possible que le code C ++ soit conforme à la fois à la norme C ++ 03 et à la norme C ++ 11 , mais fait des choses différentes selon la norme sous laquelle il est
J'essaie de construire un std::threadavec une fonction membre qui ne prend aucun argument et retourne void. Je ne peux pas trouver de syntaxe qui fonctionne - le compilateur se plaint quoi qu'il arrive. Quelle est la bonne façon de l'implémenter spawn()pour qu'elle renvoie un std::threadqui...
std::shared_ptr<Object> p1 = std::make_shared<Object>("foo"); std::shared_ptr<Object> p2(new Object("foo")); De nombreux articles sur Google et stackoverflow sont là-dessus, mais je ne peux pas comprendre pourquoi make_sharedest plus efficace que l'utilisation directe shared_ptr....
J'ai récemment rencontré le morceau de code ésotérique suivant. int main(){(([](){})());} Reformatez-le comme suit pour le rendre plus lisible: int main(){ (([](){})()); // Um... what?!?! } Mais je ne peux pas comprendre comment (([](){})())est un code valide. Il ne ressemble pas à la syntaxe du...
Quand une fonction prend un shared_ptr(de boost ou C ++ 11 STL), le passez-vous: par référence const: void foo(const shared_ptr<T>& p) ou par valeur void foo(shared_ptr<T> p):? Je préférerais la première méthode car je pense qu'elle serait plus rapide. Mais cela en vaut-il vraiment...
Je ne pose pas cette question en raison des avantages de la collecte des ordures tout d'abord. Ma principale raison de demander ceci est que je sais que Bjarne Stroustrup a dit que C ++ aura un ramasse-miettes à un moment donné. Cela dit, pourquoi n'a-t-il pas été ajouté? Il existe déjà des...
J'ai commencé à étudier les pointeurs intelligents de C ++ 11 et je ne vois aucune utilisation utile de std::weak_ptr. Quelqu'un peut-il me dire quand std::weak_ptrest utile /