Als «c++» getaggte Fragen

70
Zu GC oder nicht zu GC

Ich habe kürzlich zwei wirklich nette und lehrreiche Sprachgespräche gesehen: Diese erste von Herb Sutter zeigt alle netten und coolen Funktionen von C ++ 0x, warum die Zukunft von C ++ besser als je zuvor erscheint und wie M $ in diesem Spiel als guter Kerl gilt. Der Vortrag dreht sich um...

70
Was sind die Vorteile von boost :: noncopyable?

Um das Kopieren einer Klasse zu verhindern, können Sie ganz einfach einen Konstruktor / Zuweisungsoperator für private Kopien deklarieren. Sie können aber auch erben boost::noncopyable. Was sind in diesem Fall die Vor- und Nachteile der Verwendung von Boost?

70
GoogleTest vs CppUnit: Die Fakten

Bei der Festlegung unseres C ++ - Unit-Test-Frameworks für die nächsten Jahre haben wir GoogleTest und CppUnit in die engere Wahl gezogen . Ich habe einige Erfahrungen mit beiden und meine große Vorliebe ist GoogleTest. Um meinen Chef zu überzeugen, brauche ich einige Fakten, also habe ich im...

70
Was ist die Lebensdauer eines C ++ - Lambda-Ausdrucks?

(Ich habe bereits gelesen, wie lange implizite Funktoren aus Lambda in C ++ noch leben, und diese Frage wird nicht beantwortet.) Ich verstehe, dass die C ++ - Lambda-Syntax nur Zucker ist, um eine Instanz einer anonymen Klasse mit einem Aufrufoperator und einem bestimmten Status zu erstellen,...

70
Entfernen Sie Elemente eines Vektors innerhalb der Schleife

Ich weiß, dass es ähnliche Fragen wie diese gibt, aber ich habe es nicht geschafft, mithilfe ihrer Hilfe den Weg in meinem Code zu finden. Ich möchte lediglich ein Element eines Vektors löschen / entfernen, indem ich ein Attribut dieses Elements in einer Schleife überprüfe. Wie kann ich das...

70
Gibt es eine statische Warnung?

Mir ist diese Frage bekannt, in der Boosts "STATISCHE WARNUNG" erwähnt wird, aber ich möchte noch einmal speziell fragen, wie ich eine implementieren könnte, static_warningdie ähnlich funktioniert, static_assertaber nur zur Kompilierungszeit eine Warnung ausgibt, anstatt einen Kompilierungsfehler...

70
Hinzufügen mehrerer ausführbarer Dateien in CMake

Mein Code in einem C ++ - Projekt ist wie folgt organisiert Ich habe mehrere .cppund .hDateien, die meine Klassen enthalten Ich habe mehrere .cxxDateien, die gegen die .cppDateien und einige externe Bibliotheken kompiliert werden müssen . Jetzt hat jede der .cxxDateien eine main()Methode,...

70
Referenz deklarieren und später initialisieren?

Ich habe einen Verweis auf MyOjbect, aber das genaue Objekt hängt von einer Bedingung ab. Also möchte ich so etwas machen: MyObject& ref; if([condition]) ref = MyObject([something]) else ref = MyObject([something else]); Ich kann dies derzeit nicht tun, da der Compiler mir nicht...

70
Komplexe C-Deklaration

Ich habe gerade einen Code im Internet durchgesehen und Folgendes gefunden: float * (*(*foo())[SIZE][SIZE])() Wie lese ich diese Erklärung? Gibt es bestimmte Regeln zum Lesen derart komplexer Erklärungen?

70
Warum muss ich std :: cout schreiben und nicht auch std :: <<

Warum muss ich schreiben std::coutund nicht auch std::<<in eine Codezeile wie diese: #include <iostream> int main() { std::cout << "Hello, world!"; return 0; } coutkommt aus der stdBibliothek und wird <<normalerweise nicht zum Verschieben von Bits verwendet? Warum muss ich...

70
Refactoring mit C ++ 11

Angesichts des neuen Toolset, das von vielen Programmierern in C ++ bereitgestellt wird, zielen viele auf Programmvereinfachung, Ausdruckskraft und Effizienz ab, überfliegen ihren alten Code und nehmen Optimierungen (einige sinnlos, andere erfolgreich) vor, um ihre Ziele zu erreichen. Was sind...