Questions marquées «c++»

C ++ est un langage de programmation à usage général. Il a été initialement conçu comme une extension de C et a une syntaxe similaire, mais c'est maintenant un langage complètement différent. Utilisez cette balise pour les questions sur le code (à compiler) avec un compilateur C ++. Utilisez une balise spécifique à la version pour les questions liées à une révision standard spécifique [C ++ 11], [C ++ 14], [C ++ 17] ou [C ++ 20], etc.


20
Comment mapper facilement des énumérations C ++ à des chaînes
J'ai un tas de types d'énumérations dans certains fichiers d'en-tête de bibliothèque que j'utilise, et je veux avoir un moyen de convertir les valeurs d'énumération en chaînes utilisateur - et vice-versa. RTTI ne le fera pas pour moi, car les «chaînes utilisateur» doivent être un peu plus lisibles que les …
119 c++  templates  enums 



1
Fonction de modèle dans la classe de modèle
J'ai ce code: template <class T> class MyClass { public: template <class U> void foo() { U a; a.invoke(); } }; Je le veux sous cette forme: template <class T> class MyClass { public: template <class U> void foo(); }; template <class T> /* ????? */ void MyClass<T>::foo() { U …
119 c++  templates 



6
Détecter si stdin est un terminal ou un tuyau?
Quand j'exécute " python" depuis le terminal sans argument, cela fait apparaître le shell interactif Python. Lorsque j'exécute " cat | python" depuis le terminal, il ne lance pas le mode interactif. D'une manière ou d'une autre, sans obtenir aucune entrée, il a détecté qu'il est connecté à un tuyau. …
118 c++  c  qt  pipe  stdin 

9
Jusqu'où peuvent aller les fuites de mémoire?
J'ai rencontré plusieurs fois des fuites de mémoire. Habituellement, quand je suis malloccomme s'il n'y avait pas de lendemain, ou que je pendais comme du FILE *linge sale. Je suppose généralement (lire: espère désespérément) que toute la mémoire est nettoyée au moins lorsque le programme se termine. Y a-t-il des …
118 c++  c  memory  memory-leaks 


5
Comment fonctionne `is_base_of`?
Comment fonctionne le code suivant? typedef char (&yes)[1]; typedef char (&no)[2]; template <typename B, typename D> struct Host { operator B*() const; operator D*(); }; template <typename B, typename D> struct is_base_of { template <typename T> static yes check(D*, T); static no check(B*, int); static const bool value = sizeof(check(Host<B,D>(), …

13
remove_if équivalent pour std :: map
J'essayais d'effacer une gamme d'éléments de la carte en fonction de conditions particulières. Comment le faire en utilisant les algorithmes STL? Au départ j'ai pensé à utiliser remove_ifmais ce n'est pas possible car remove_if ne fonctionne pas pour les conteneurs associatifs. Existe-t-il un algorithme équivalent "remove_if" qui fonctionne pour la …
118 c++  stl  map 

8
Y a-t-il un indice du compilateur pour que GCC force la prédiction de branche à toujours suivre une certaine direction?
Pour les architectures Intel, existe-t-il un moyen de demander au compilateur GCC de générer du code qui force toujours la prédiction de branche d'une manière particulière dans mon code? Le matériel Intel prend-il même en charge cela? Qu'en est-il des autres compilateurs ou matériels? J'utiliserais ceci dans le code C …

10
Idiome Pimpl vs interface de classe virtuelle pure
Je me demandais ce qui inciterait un programmeur à choisir l'idiome Pimpl ou la classe virtuelle pure et l'héritage. Je comprends que l'idiome pimpl est livré avec une indirection supplémentaire explicite pour chaque méthode publique et la surcharge de création d'objet. La classe virtuelle Pure en revanche est livrée avec …

3
Configurer Vim pour C ++
J'aimerais faire de vim mon éditeur C ++. J'ai très peu d'expérience avec lui et j'ai besoin d'aide pour configurer vim pour qu'il fonctionne avec C ++. J'ai besoin de fonctionnalités telles que code-complet (pour stl et pour mes cours) basculer entre les fichiers .cc et .h peut-être d'autres astuces …
118 c++  vim  configuration 

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.