J'utilise Visual Studio 2012 et il a des cas où nous avons ajouté des paramètres de modèles à une classe "juste" afin d'introduire un "point de couture" afin que dans le test unitaire nous puissions remplacer ces parties par des objets fictifs. Comment introduisez-vous habituellement des points de couture en …
La plupart des langages de programmation fonctionnelle (par exemple , en Common Lisp, Scheme / Racket, Clojure, Haskell, Scala, Ocaml, SML) prennent en charge certaines fonctions communes d'ordre supérieur sur les listes, telles que map, filter, takeWhile, dropWhile, foldl, foldr(voir par exemple Common Lisp, Scheme / Racket, Clojure côte à …
Selon Herb Sutter, on devrait préférer les interfaces abstraites (toutes les fonctions virtuelles pures) aux classes abstraites en C ++ pour découpler l'implémentation autant que possible. Bien que je trouve personnellement cette règle très utile, j'ai récemment rejoint une équipe avec de nombreux programmeurs Java et dans le code Java, …
J'étudie la POO en C ++ et, même si je connais les définitions de ces 3 concepts, je ne sais pas vraiment quand ni comment l'utiliser. Utilisons cette classe pour l'exemple: class Person{ private: string name; int age; public: Person(string p1, int p2){this->name=p1; this->age=p2;} ~Person(){} void set_name (string parameter){this->name=parameter;} void …
J'ai fait quelques optimisations nécessaires récemment. Une chose que j'ai faite est de changer certains ostringstreams -> sprintfs. Je sprintf'ing un tas de chaînes std :: strings to ac style array, ala char foo[500]; sprintf(foo, "%s+%s", str1.c_str(), str2.c_str()); Il s'avère que l'implémentation std :: string :: c_str () de Microsoft …
Fermé . Cette question est basée sur l'opinion . Il n'accepte pas actuellement les réponses. Voulez-vous améliorer cette question? Mettez à jour la question afin d'y répondre avec des faits et des citations en modifiant ce message . Fermé il y a 5 ans . Je fais beaucoup de travail …
Fermé . Cette question est basée sur l'opinion . Il n'accepte pas actuellement les réponses. Voulez-vous améliorer cette question? Mettez à jour la question afin d'y répondre avec des faits et des citations en modifiant ce message . Fermé il y a 5 ans . Mes cours de programmation à …
Je travaille comme agent / gestionnaire de location pour une entreprise de location de voitures qui fonctionne sur un système de location qui a été écrit en 1972. J'ai décidé qu'il était peut-être temps de faire une mise à jour. Pour un peu de contexte, voici un bref exemple de …
Fermé . Cette question est basée sur l'opinion . Il n'accepte pas actuellement les réponses. Voulez-vous améliorer cette question? Mettez à jour la question afin d'y répondre avec des faits et des citations en modifiant ce message . Fermé il y a 5 ans . Une entreprise avec laquelle je …
Lors de la modélisation d'un objet avec des enfants, il est courant d'inclure les enfants via la composition, en tant que membre de la classe parent. Parfois, cependant, les enfants doivent dire quelque chose au parent, ils doivent appeler une fonction du parent. Comment cela peut-il être accompli en utilisant …
Cette question est inspirée d' une question sur finalen java . En C / C ++, dois-je utiliser constautant que possible? Je sais qu'il y a déjà une question connexe concernant l'utilisation des constparamètres . Malheureusement, cette question et ses réponses ne répondent pas entièrement à ma question, car il …
À l'origine, cela fait partie d' une autre question. Pourquoi est-on sizeofappelé un opérateur de compilation? N'est-ce pas réellement un opérateur d'exécution? Et s'il s'agit bien d'un opérateur au moment de la compilation, comment peut-il aider à produire du code portable qui s'exécute de la même manière sur différents ordinateurs? …
Je n'ai pas de contexte spécifique dans lequel je pose la question, mais pendant que je lisais un livre pour débutants sur C ++, j'ai remarqué l'utilisation à la fois d'un manipulateur de flux endl et d'un caractère d'échappement newline lors du traitement d'un objet stream. L'exmaple est le suivant: …
Le code suivant provoque une fuite de mémoire: #include <iostream> #include <memory> #include <vector> using namespace std; class base { void virtual initialize_vector() = 0; }; class derived : public base { private: vector<int> vec; public: derived() { initialize_vector(); } void initialize_vector() { for (int i = 0; i < …
J'ai donc remarqué qu'il est possible d'éviter de mettre des fonctions privées dans les en-têtes en faisant quelque chose comme ceci: // In file pred_list.h: class PredicateList { int somePrivateField; friend class PredicateList_HelperFunctions; public: bool match(); } // In file pred_list.cpp: class PredicateList_HelperFunctions { static bool fullMatch(PredicateList& p) { return …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.