Supposons que j'ai 2 pointeurs: int *a = something; int *b = something; Si je veux les comparer et voir si elles pointent au même endroit, est-ce que (a == b) fonctionne?
Supposons que j'ai 2 pointeurs: int *a = something; int *b = something; Si je veux les comparer et voir si elles pointent au même endroit, est-ce que (a == b) fonctionne?
Pourquoi le code suivant produit-il cette erreur même si c est une structure et a un héritage public par défaut? struct c { protected: int i; public: c(int ii=0):i(ii){} virtual c *fun(); }; c* c::fun(){ cout<<"in c"; return &c(); } class d : c { public: d(){} d* fun() { i = 9;...
Considérez une paire de deux fichiers source: un fichier de déclaration d'interface ( *.hou *.hpp) et son fichier d'implémentation ( *.cpp). Laissez le *.hfichier ressembler à ce qui suit: namespace MyNamespace { class MyClass { public: int foo(); }; } J'ai vu deux pratiques différentes pour...
Si je déclare un objet enveloppé dans un pointeur partagé: std::shared_ptr<myClass> myClassObject(new myClass()); alors j'ai voulu le passer comme argument à une méthode: DoSomething(myClassObject); //the called method void DoSomething(std::shared_ptr<myClass> arg1) {...
Je ne peux pas faire fonctionner ça. J'ai créé une application console simple (qui dépend de la websocket++bibliothèque) qui a besoin de Boostbibliothèques .. mais quand j'essaye de compiler, j'obtiens: erreur fatale LNK1104: impossible d'ouvrir le fichier 'libboost_system-vc110-mt-gd-1_51.lib'...
memset()est déclarée renvoyer void*qui est toujours la même valeur que l'adresse passée dans la fonction. Quelle est l'utilité de la valeur de retour? Pourquoi ne revient-il pas void?
C'est un peu une question en deux parties, tout sur l'atomicité de std::shared_ptr: 1. Autant que je sache, std::shared_ptrc'est le seul pointeur intelligent <memory>qui soit atomique. Je me demande s'il existe une version non atomique de std::shared_ptrdisponible (je ne vois rien dedans...
Étant un débutant total de Boost.Asio, je suis confus avec io_service::run(). J'apprécierais que quelqu'un puisse m'expliquer quand cette méthode bloque / débloque. Les documentations indiquent: La run()fonction se bloque jusqu'à ce que tout le travail soit terminé et qu'il n'y ait plus de...
Considérez le code C ++ suivant: void* a = &a; Pourquoi le compilateur ne se plaint-il pas d'avoir utilisé un identifiant non déclaré? De plus, que considère le compilateur comme étant la variable a? Est-ce un pointeur vers un objet vide ou est-ce un pointeur vers un void*pointeur?...
J'ai le code le plus simple qui soit: #include <iostream> #include <thread> void worker() { std::cout << "another thread"; } int main() { std::thread t(worker); std::cout << "main thread" << std::endl; t.join(); return 0; } bien que je ne puisse toujours pas le...
Considérez la déclaration suivante: *((char*)NULL) = 0; //undefined behavior Il invoque clairement un comportement indéfini. L'existence d'une telle instruction dans un programme donné signifie-t-elle que l'ensemble du programme est indéfini ou que le comportement ne devient indéfini qu'une fois...
Comment convertir un flottant en chaîne en C ++ tout en spécifiant la précision et le nombre de chiffres décimaux? Par exemple: 3.14159265359 -> "3.14"
J'ai le code Java suivant avec plusieurs grands tableaux qui ne changent jamais de taille. Il tourne en 1100 ms sur mon ordinateur. J'ai implémenté le même code en C ++ et utilisé std::vector. Le temps de l'implémentation C ++ qui exécute exactement le même code est de 8800 ms sur mon ordinateur....
Je suis très confus au sujet de l'initialisation de la valeur et par défaut et zéro. et surtout lorsqu'ils se lancent dans les différents standards C ++ 03 et C ++ 11 (et C ++ 14 ). Je cite et j'essaie d'étendre une très bonne réponse Value- / Default- / Zero- Init C ++ 98 et C ++ 03 ici pour la...
Lors de la création de variables locales, est-il correct d'utiliser (const) auto&ou auto? par exemple: SomeClass object; const auto result = object.SomeMethod(); ou const auto& result = object.SomeMethod(); Où SomeMethod () renvoie une valeur non primitive - peut-être un autre type défini...
Disons que j'ai un type et que je veux rendre son constructeur par défaut privé. J'écris ce qui suit: class C { C() = default; }; int main() { C c; // error: C::C() is private within this context (g++) // error: calling a private constructor of class 'C' (clang++) // error C2248: 'C::C' cannot...
J'ai besoin d'une fonction qui (comme SecureZeroMemory de WinAPI) remet toujours à zéro la mémoire et ne soit pas optimisée, même si le compilateur pense que la mémoire ne sera plus jamais accessible après cela. Semble être un candidat parfait pour volatile. Mais j'ai des problèmes pour que cela...
Existe-t-il un moyen d'obtenir par programme le double qui est le plus proche de 1.0, mais qui n'est pas réellement 1.0? Une façon piratée de faire cela serait de mémoriser le double en un entier de même taille, puis d'en soustraire un. La façon dont les formats à virgule flottante IEEE754...
Est-ce que créer un constructeur ayant plusieurs arguments explicita un effet (utile)? Exemple: class A { public: explicit A( int b, int c ); // does explicit have any (useful) effect? };
Quelqu'un sait-il SI , QUAND ou COMMENT je peux faire fonctionner Memcached sur un environnement Windows 64 bits? Je mets en place une nouvelle solution d'hébergement et préférerais de loin exécuter un système d'exploitation 64 bits, et comme il s'agit d'une solution ASP.Net MVC avec SQL Server...