Questions marquées «c++-faq»

129
Polymorphisme en C ++

AUTANT QUE JE SACHE: C ++ fournit trois types différents de polymorphisme. Fonctions virtuelles Surcharge du nom de la fonction Surcharge de l'opérateur En plus des trois types de polymorphisme ci-dessus, il existe d'autres types de polymorphisme: Durée au moment de la compilation polymorphisme ad...

127
Quand rendre un type non déplaçable en C ++ 11?

J'ai été surpris que cela n'apparaisse pas dans mes résultats de recherche, je pensais que quelqu'un l'aurait déjà demandé, étant donné l'utilité de la sémantique de déplacement en C ++ 11: Quand dois-je (ou est-ce une bonne idée pour moi de) rendre une classe non déplaçable en C ++ 11? (Raisons...

115
Comment surcharger std :: swap ()

std::swap()est utilisé par de nombreux conteneurs std (tels que std::listet std::vector) pendant le tri et même l'affectation. Mais l'implémentation std de swap()est très généralisée et plutôt inefficace pour les types personnalisés. Ainsi, l'efficacité peut être gagnée en surchargeant...

106
Que sont les comparateurs transparents?

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...

98
Quelle est la bonne réponse pour cout << a ++ << a ;?

Récemment, dans une interview, il y avait une question de type objectif suivante. int a = 0; cout << a++ << a; Réponses: une. 10 b. 01 ch. comportement indéfini J'ai répondu au choix b, c'est-à-dire que la sortie serait "01". Mais à ma grande surprise plus tard, un intervieweur m'a dit...

94
Quel est l'intérêt des pointeurs de fonction?

J'ai du mal à voir l'utilité des pointeurs de fonction. Je suppose que cela peut être utile dans certains cas (ils existent, après tout), mais je ne peux pas penser à un cas où il est préférable ou inévitable d'utiliser un pointeur de fonction. Pourriez-vous donner un exemple de bonne utilisation...