Articles of c #

Sélectionnez le constructeur de classe à l’aide de enable_if

Considérez le code suivant: #include #include template struct A { int val = 0; template <class = typename std::enable_if::type> A(int n) : val(n) {}; A(…) { } /* … */ }; struct YES { constexpr static bool value = true; }; struct NO { constexpr static bool value = false; }; int main() { A […]

Comment fonctionne qobject_cast?

Je viens de trouver le code suivant dans Qt et je suis un peu confus de ce qui se passe ici. Surtout pour ce que reinterpret_cast(0) fait? template inline T qobject_cast(const QObject *object) { // this will cause a compilation error if T is not const register T ptr = static_cast(object); Q_UNUSED(ptr); #if !defined(QT_NO_MEMBER_TEMPLATES) && […]

C ++ 11 lambdas: capture de variable membre gotcha

Considérez ce code: #include #include class A { public: A(int data) : data_(data) { std::cout << "A(" << data_ << ")" << std::endl; } ~A() { std::cout << "~A()" << std::endl; } void a() { std::cout << data_ << std::endl; } private: int data_; }; class B { public: B(): a_(new A(13)) { std::cout << […]

Sizeof vs Strlen

#include “stdio.h” #include “ssortingng.h” main() { char ssortingng[] = “october”; // october is 7 letters strcpy(ssortingng, “september”); // september is 9 letters printf(“the size of %s is %d and the length is %d\n\n”, ssortingng, sizeof(ssortingng), strlen(ssortingng)); return 0; } Sortie: la taille de septembre est de 8 et la longueur est de 9 Y a-t-il […]

Une fonction statique a-t-elle besoin du mot-clé statique pour le prototype dans C?

Mon livre de programmation C dit que lorsque je veux créer une fonction statique, je dois placer le mot-clé statique devant la définition de la fonction. Il ne mentionne pas explicitement le prototype. En outre, les exemples n’utilisent pas de prototypes et placent simplement les fonctions statiques en haut du fichier (de sorte qu’elles n’aient […]

Comment puis-je dire à gcov d’ignorer les lignes impossibles à saisir du code C ++?

J’utilise gcov pour mesurer la couverture dans mon code C ++. Je voudrais arriver à une couverture à 100%, mais je suis gêné par le fait que certaines lignes de code sont théoriquement impossibles à détecter (méthodes à implémenter mais qui ne sont jamais appelées, twigs par défaut des instructions switch , etc.). Chacune de […]

C #: Comment puis-je sécuriser un thread IEnumerable ?

Disons que j’ai cette méthode simple: public IEnumerable GetNumbers() { uint n = 0; while(n < 100) yield return n++; } Comment pourriez-vous rendre ce fil sûr? Et par là je veux dire que vous obtiendrez cet énumérateur une fois, et que plusieurs threads gèrent tous les nombres sans que personne ne les duplique. Je […]

Comment puis-je avoir plusieurs packs de parameters dans un modèle variadic?

La fonction one () accepte un paquet de parameters. La fonction deux () accepte deux. Chaque paquet est contraint à être enveloppé dans les types A et B. Pourquoi est-il impossible d’instancier deux () ? template struct A {}; template struct B {}; template void one(A …as) { } template void two(A …as, B …bs) […]

Existe-t-il une alternative à Maven pour les projets .NET / Windows Forms?

Qu’est-ce qui est utilisé à la place de Maven pour les projets C # Windows Forms? Nous avons des développeurs du monde entier et nous essayons de mettre au point un système de gestion des dépendances simple et rapide.

Rendement de retour en java

J’ai créé une liste liée en Java en utilisant des génériques, et je veux maintenant pouvoir parcourir tous les éléments de la liste. En C #, j’utiliserais le yield return dans la liste des liens en parcourant la liste des éléments contenus dans la liste. Comment pourrais-je créer une version Java de ce qui précède […]