Als «c++11» getaggte Fragen

Verwenden Sie dieses Tag für Code, der als C ++ 11 kompiliert werden muss (ohne die in C ++ 14 oder höher eingeführten Funktionen zu verwenden).


9
Wie kann ich zwei Vektoren auf dieselbe Weise sortieren, wobei Kriterien nur einen der Vektoren verwenden?
Wie kann ich zwei Vektoren auf dieselbe Weise sortieren, wobei Kriterien nur einen der Vektoren verwenden? Angenommen, ich habe zwei Vektoren gleicher Größe: vector<MyObject> vectorA; vector<int> vectorB; Ich sortiere dann vectorAmit einer Vergleichsfunktion. Diese Sortierung wurde neu angeordnet vectorA. Wie kann ich die gleiche Nachbestellung anwenden lassen vectorB? Eine Möglichkeit …
84 c++  c++11 

5
Enum vs Stark getippte Enum
Ich bin ein Anfänger in der C ++ - Programmierung. Heute stoße ich auf ein neues Thema: stark getippt enum. Ich habe es ein bisschen recherchiert, aber bis jetzt kann ich nicht herausfinden, warum wir das brauchen und wozu es gut ist. Zum Beispiel, wenn wir haben: enum xyz{a, b, …
83 c++  c++11  enums 


4
Wie kann man std :: unique_ptr weitergeben?
Ich habe meinen ersten Versuch, C ++ 11 zu verwenden unique_ptr. Ich ersetze einen polymorphen Rohzeiger in einem meiner Projekte, das einer Klasse gehört, aber ziemlich häufig herumgereicht wird. Früher hatte ich Funktionen wie: bool func(BaseClass* ptr, int other_arg) { bool val; // plain ordinary function that does something... return …
83 c++  c++11  unique-ptr 

11
So erhalten Sie eine ganzzahlige Thread-ID in C ++ 11
c ++ 11 hat die Möglichkeit, die aktuelle Thread-ID abzurufen, kann jedoch nicht in einen ganzzahligen Typ umgewandelt werden: cout<<std::this_thread::get_id()<<endl; Ausgabe: 139918771783456 cout<<(uint64_t)std::this_thread::get_id()<<endl; Fehler: Ungültige Umwandlung vom Typ 'std :: thread :: id' in Typ 'uint64_t'. Gleiches gilt für andere Typen. Ungültige Umwandlung vom Typ 'std :: thread :: id' …

4
Sind C ++ 11 thread_local-Variablen automatisch statisch?
Gibt es einen Unterschied zwischen diesen beiden Codesegmenten: void f() { thread_local vector<int> V; V.clear(); ... // use V as a temporary variable } und void f() { static thread_local vector<int> V; V.clear(); ... // use V as a temporary variable } Hintergrundgeschichte: Ursprünglich hatte ich einen STATISCHEN Vektor V …

2
Effizienz von C ++ 11 push_back () mit std :: move versus emplace_back () für bereits erstellte Objekte
In C ++ 11 emplace_back()ist im allgemeinen bevorzugt (in Bezug auf der Effizienz) zu , push_back()da es ermöglicht , in-Place - Konstruktion, aber das ist immer noch der Fall , bei der Verwendung push_back(std::move())mit einem bereits aufgebauten Objekt? Wird zum Beispiel emplace_back()in Fällen wie den folgenden immer noch bevorzugt? std::string …

3
Wiederverwendung eines bewegten Containers?
Was ist der richtige Weg, um einen bewegten Container wiederzuverwenden? std::vector<int> container; container.push_back(1); auto container2 = std::move(container); // ver1: Do nothing //container2.clear(); // ver2: "Reset" container = std::vector<int>() // ver3: Reinitialize container.push_back(2); assert(container.size() == 1 && container.front() == 2); Nach dem, was ich im C ++ 0x-Standardentwurf gelesen habe; ver3 …


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 


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 …

4
Warum ist die neue Zufallsbibliothek besser als std :: rand ()?
Also sah ich einen Vortrag namens rand (), der als schädlich angesehen wurde, und er befürwortete die Verwendung des Motorverteilungsparadigmas der Zufallszahlengenerierung gegenüber dem einfachen std::rand()Plusmodul-Paradigma. Ich wollte jedoch die Fehler aus std::rand()erster Hand sehen, also machte ich ein kurzes Experiment: Im Grunde genommen habe ich 2 Funktionen getRandNum_Old()und getRandNum_New()daß …
82 c++  c++11  random 

4
Hat "const auto" eine Bedeutung?
Ich denke, die Frage ist klar genug. Wird das autoSchlüsselwort Konstanz automatisch erkennen oder immer einen Nicht-Konstantentyp zurückgeben, selbst wenn es z. zwei Versionen einer Funktion (eine, die zurückgibt constund die andere, die dies nicht tut). Nur zur Veranschaulichung, ich benutze const auto end = some_container.end()vor meinen for-Schleifen, aber ich …
82 c++  c++11  const 

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.