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.


5
Wie ordnen Sie C ++ neu zu?
Wie kann ich reallocin C ++? Es scheint in der Sprache zu fehlen - es gibt newund deleteaber nicht resize! Ich brauche es, weil mein Programm, wenn es mehr Daten liest, den Puffer neu zuweisen muss, um es zu halten. Ich denke nicht, dass es die richtige Option ist, den …


5
Warum eine Ausnahme als Verweis auf const abfangen?
Ich habe oft gehört und gelesen, dass es besser ist, eine Ausnahme als Referenz auf const zu fangen, als als Referenz. Warum ist: try { // stuff } catch (const std::exception& e) { // stuff } besser als: try { // stuff } catch (std::exception& e) { // stuff }
83 c++  exception  const 

4
Wie wähle ich zwischen map und unordered_map?
Angenommen, ich wollte Daten mit einer Zeichenfolge als Schlüssel zuordnen. Welchen Container hätte ich wählen sollen mapoder unordered_map? unordered_mapnimmt mehr Speicherplatz in Anspruch, nehmen wir also an, dass Speicher kein Problem ist und das Problem die Geschwindigkeit ist. unordered_mapsollte im Allgemeinen eine durchschnittliche Komplexität von O (1) mit dem schlechtesten …

4
Wie kann ich einen eigenen Komparator für eine Karte erstellen?
typedef map<string, string> myMap; Beim Einfügen eines neuen Paares in myMapwird der Schlüssel stringzum Vergleichen durch einen eigenen Zeichenfolgenkomparator verwendet. Ist es möglich, diesen Komparator zu überschreiben? Zum Beispiel möchte ich den Schlüssel stringnach seiner Länge vergleichen, nicht nach dem Alphabet. Oder gibt es eine andere Möglichkeit, die Karte zu …
83 c++  stl  stdmap 

9
statische Variablen in einer Inline-Funktion
Ich habe eine Funktion, die in einer Header-Datei deklariert und definiert ist. Dies ist ein Problem für sich. Wenn diese Funktion nicht inline ist, erhält jede Übersetzungseinheit, die diesen Header verwendet, eine Kopie der Funktion, und wenn sie miteinander verknüpft sind, werden sie dupliziert. Ich habe das "behoben", indem ich …

5
std :: array vs array leistung
Wenn ich ein sehr einfaches Array wie erstellen möchte int myArray[3] = {1,2,3}; Soll ich std::arraystattdessen verwenden? std::array<int, 3> a = {{1, 2, 3}}; Was sind die Vorteile der Verwendung von std :: array gegenüber den üblichen? Ist es performanter? Einfacher zu handhaben für das Kopieren / Zugreifen?
83 c++  c++11  stdarray 


10
Entspricht #region für C ++
Was ist das C ++ - Äquivalent von #region für C ++, damit ich benutzerdefinierte Code-Faltbits einfügen und meinen Code ein wenig leichter lesbar machen kann?
83 c#  c++ 

5
Wie kann man einen Segmentierungsfehler unter Linux abfangen?
Ich muss einen Segmentierungsfehler bei Bibliotheksbereinigungsvorgängen von Drittanbietern abfangen. Dies geschieht manchmal kurz vor dem Beenden meines Programms, und ich kann den wahren Grund dafür nicht ermitteln. In der Windows-Programmierung könnte ich dies mit __try - __catch tun. Gibt es eine plattformübergreifende oder plattformspezifische Möglichkeit, dasselbe zu tun? Ich brauche …

7
In std :: multiset gibt es eine Funktion oder einen Algorithmus, um nur ein Sample (unicate oder duplicate) zu löschen, wenn ein Element gefunden wird
Vielleicht ist dies ein Duplikat, aber ich habe keine Suche gefunden: Wenn erase(value)aufgerufen wird, werden std::multisetalle Elemente mit dem gefundenen Wert gelöscht. Die einzige Lösung, an die ich denken könnte, ist: std::multiset<int>::iterator hit(mySet.find(5)); if (hit!= mySet.end()) mySet.erase(hit); Das ist in Ordnung, aber ich dachte, es könnte besser sein. Irgendwelche Ideen …
83 c++  stl  multiset 

12
Geben alle C ++ - Operatoren etwas zurück?
Alle C ++ - Operatoren, mit denen ich gearbeitet habe, geben etwas zurück, z. B. gibt der +Operator das Ergebnis der Addition zurück. Geben alle C ++ - Operatoren etwas zurück oder gibt es einige C ++ - Operatoren, die nichts zurückgeben?
83 c++  operators 


3
Ist der vorzeichenbehaftete Ganzzahlüberlauf in C ++ immer noch undefiniertes Verhalten?
Wie wir wissen, ist ein vorzeichenbehafteter Ganzzahlüberlauf ein undefiniertes Verhalten . In der C ++ 11- cstdintDokumentation gibt es jedoch etwas Interessantes : Ganzzahliger Typ mit Vorzeichen mit einer Breite von genau 8, 16, 32 bzw. 64 Bit ohne Auffüllbits und Verwendung des Zweierkomplements für negative Werte (nur bereitgestellt, wenn …

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.