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.

4
Reihenfolge der Aufrufe von Mitgliedskonstruktoren und Destruktoren
Oh C ++ Gurus, ich suche deine Weisheit. Sprechen Sie mit mir Standardese und sagen Sie mir, ob C ++ das folgende Programm garantiert: #include <iostream> using namespace std; struct A { A() { cout << "A::A" << endl; } ~A() { cout << "A::~" << endl; } }; struct …
120 c++ 

2
Wie funktioniert std :: tie?
Ich habe verwendet, std::tieohne viel darüber nachzudenken. Es funktioniert, also habe ich das einfach akzeptiert: auto test() { int a, b; std::tie(a, b) = std::make_tuple(2, 3); // a is now 2, b is now 3 return a + b; // 5 } Aber wie funktioniert diese schwarze Magie ? Wie …
120 c++  c++11  tuples 

7
Cast to Int vs Floor
Gibt es einen Unterschied zwischen diesen: float foo1 = (int)(bar / 3.0); float foo2 = floor(bar / 3.0); Soweit ich weiß, haben beide Fälle das gleiche Ergebnis. Gibt es einen Unterschied im kompilierten Code?
120 c++  c  floating-point 

8
Warum befinden sich C ++ - Inline-Funktionen im Header?
Hinweis: Hier geht es nicht darum, wie Inline-Funktionen verwendet werden oder wie sie funktionieren, sondern darum, warum sie so ausgeführt werden, wie sie sind. Die Deklaration einer Klassenmitgliedsfunktion muss keine Funktion als definieren inline, sondern ist nur die tatsächliche Implementierung der Funktion. Zum Beispiel in der Header-Datei: struct foo{ void …

4
zusätzlicher Qualifikationsfehler in C ++
Ich habe eine Mitgliedsfunktion, die wie folgt definiert ist: Value JSONDeserializer::ParseValue(TDR type, const json_string& valueString); Wenn ich die Quelle kompiliere, erhalte ich: Fehler: zusätzliche Qualifikation 'JSONDeserializer ::' für Mitglied 'ParseValue' Was ist das? Wie entferne ich diesen Fehler?
120 c++  g++  compiler-errors 

13
Aufrufstapel in C oder C ++ drucken
Gibt es eine Möglichkeit, den Aufrufstapel in einem laufenden Prozess in C oder C ++ bei jedem Aufruf einer bestimmten Funktion zu sichern? Was ich vorhabe, ist ungefähr so: void foo() { print_stack_trace(); // foo's body return } Wo print_stack_tracefunktioniert ähnlich wie callerin Perl. Oder sowas: int main (void) { …
120 c++  c  linux  callstack 


3
polymorphic_allocator: wann und warum sollte ich es verwenden?
Hier ist die Dokumentation zu cppreference , hier ist der Arbeitsentwurf. Ich muss zugeben, dass ich nicht verstanden habe, was der eigentliche Zweck ist polymorphic_allocatorund wann / warum / wie ich es verwenden soll. Als Beispiel pmr::vectorhat der folgende Signatur: namespace pmr { template <class T> using vector = std::vector<T, …
120 c++  allocator  c++17 

30
C ++ - Leistung im Vergleich zu Java / C #
Gesperrt . Diese Frage und ihre Antworten sind gesperrt, da die Frage nicht zum Thema gehört, aber historische Bedeutung hat. Derzeit werden keine neuen Antworten oder Interaktionen akzeptiert. Nach meinem Verständnis erzeugt C / C ++ nativen Code, der auf einer bestimmten Maschinenarchitektur ausgeführt werden kann. Umgekehrt laufen Sprachen wie …
119 c#  java  c++  performance  bytecode 



3
Ist es sinnvoll, Inline-Schlüsselwörter mit Vorlagen zu verwenden?
Ist es sinnvoll, Vorlagen in Headern zu definieren und der Compiler zu bestimmen, ob das Inlining einer Funktion vorteilhaft ist? Ich habe gehört, dass moderne Compiler besser wissen, wann sie eine Funktion einbinden müssen, und inlineHinweise ignorieren . edit: Ich möchte beide Antworten akzeptieren, aber das ist nicht möglich. Um …
119 c++  templates  inline 




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.