Als «c++» getaggte Fragen

C ++ ist eine universelle Programmiersprache. Es wurde ursprünglich als Erweiterung von C entwickelt und hat eine ähnliche Syntax, ist aber jetzt eine völlig andere Sprache. Verwenden Sie dieses Tag für Fragen zu Code, der mit einem C ++ - Compiler kompiliert werden soll. Verwenden Sie ein versionierungsspezifisches Tag für Fragen zu einer bestimmten Standardversion [C ++ 11], [C ++ 14], [C ++ 17] oder [C ++ 20] usw.

9
"Using Namespace" in C ++ - Headern
In all unseren C ++ - Kursen setzen alle Lehrer immer using namespace std;direkt nach dem #includes in ihre .hDateien. Dies scheint mir seitdem gefährlich zu sein, wenn ich diesen Header in ein anderes Programm einbinde, wird der Namespace in mein Programm importiert, möglicherweise ohne es zu merken, zu beabsichtigen …


19
So ordnen Sie C ++ - Aufzählungen einfach Zeichenfolgen zu
Ich habe eine Reihe von Aufzählungstypen in einigen Bibliotheksheaderdateien, die ich verwende, und ich möchte eine Möglichkeit haben, Aufzählungswerte in Benutzerzeichenfolgen zu konvertieren - und umgekehrt. RTTI wird das für mich nicht tun, da die 'Benutzerzeichenfolgen' etwas besser lesbar sein müssen als die Aufzählungen. Eine Brute-Force-Lösung wäre eine Reihe solcher …
119 c++  templates  enums 

1
Vorlagenfunktion innerhalb der Vorlagenklasse
Ich habe diesen Code: template <class T> class MyClass { public: template <class U> void foo() { U a; a.invoke(); } }; Ich möchte es in dieser Form: template <class T> class MyClass { public: template <class U> void foo(); }; template <class T> /* ????? */ void MyClass<T>::foo() { …
119 c++  templates 

7
Wie kompiliere ich für Windows unter Linux mit gcc / g ++?
Ich habe einige Effekte in C ++ (g ++) mit freeglut unter Linux geschrieben und kompiliere sie mit g++ -Wall -lglut part8.cpp -o part8 Ich habe mich also gefragt, ob es möglich ist, dass g ++ statisch kompilierte ausführbare Windows-Dateien erstellt, die alles Notwendige enthalten. Ich habe kein Windows, also …
119 c++  opengl  gcc  glut  freeglut 



6
Erkennen, ob stdin ein Anschluss oder eine Leitung ist?
Wenn ich " python" vom Terminal ohne Argumente ausführe , wird die interaktive Python-Shell aufgerufen. Wenn ich " cat | python" vom Terminal aus ausführe , wird der interaktive Modus nicht gestartet. Irgendwie hat es ohne Eingabe festgestellt, dass es mit einer Pipe verbunden ist. Wie würde ich eine ähnliche …
118 c++  c  qt  pipe  stdin 

9
Wie weit können Speicherverluste gehen?
Ich bin oft auf Speicherlecks gestoßen. Normalerweise, wenn ich so bin, mallocals gäbe es kein Morgen, oder wenn ich FILE *wie schmutzige Wäsche baumle. Ich gehe im Allgemeinen davon aus (sprich: hoffe verzweifelt), dass der gesamte Speicher zumindest nach Beendigung des Programms bereinigt wird. Gibt es Situationen, in denen durchgesickerter …
118 c++  c  memory  memory-leaks 


5
Wie funktioniert `is_base_of`?
Wie funktioniert der folgende Code? typedef char (&yes)[1]; typedef char (&no)[2]; template <typename B, typename D> struct Host { operator B*() const; operator D*(); }; template <typename B, typename D> struct is_base_of { template <typename T> static yes check(D*, T); static no check(B*, int); static const bool value = sizeof(check(Host<B,D>(), …

8
Gibt es einen Compiler-Hinweis für GCC, um die Verzweigungsvorhersage zu zwingen, immer einen bestimmten Weg zu gehen?
Gibt es für die Intel-Architekturen eine Möglichkeit, den GCC-Compiler anzuweisen, Code zu generieren, der die Verzweigungsvorhersage in meinem Code immer auf eine bestimmte Weise erzwingt? Unterstützt die Intel-Hardware dies überhaupt? Was ist mit anderen Compilern oder Hardware? Ich würde dies in C ++ - Code verwenden, wo ich den Fall …

13
remove_if-Äquivalent für std :: map
Ich habe versucht, eine Reihe von Elementen aus der Karte zu löschen, basierend auf einer bestimmten Bedingung. Wie mache ich das mit STL-Algorithmen? Anfangs dachte ich an die Verwendung, remove_ifaber es ist nicht möglich, da remove_if für assoziative Container nicht funktioniert. Gibt es einen äquivalenten "remove_if" -Algorithmus, der für die …
118 c++  stl  map 

10
Pimpl idiom vs Pure virtuelle Klassenschnittstelle
Ich habe mich gefragt, was einen Programmierer dazu bringen würde, entweder Pimpl-Idiom oder reine virtuelle Klasse und Vererbung zu wählen. Ich verstehe, dass die Pimpl-Sprache eine explizite zusätzliche Indirektion für jede öffentliche Methode und den Aufwand für die Objekterstellung enthält. Die virtuelle Klasse Pure hingegen verfügt über eine implizite Indirektion …

27
CMake findet keinen Visual C ++ - Compiler
Nach der Installation von Visual Studio 2015 und dem Ausführen von CMake in einem früheren Projekt werden CMake-Fehler angezeigt, die darauf hinweisen, dass der C-Compiler nicht gefunden werden konnte. The C compiler identification is unknown The CXX compiler identification is unknown CMake Error at CMakeLists.txt:4 (PROJECT): No CMAKE_C_COMPILER could be …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.