Ist es möglich, dass C ++ - Code sowohl dem C ++ 03- Standard als auch dem C ++ 11- Standard entspricht, aber je nachdem, unter welchem Standard er kompiliert wird, unterschiedliche Aktionen
Ist es möglich, dass C ++ - Code sowohl dem C ++ 03- Standard als auch dem C ++ 11- Standard entspricht, aber je nachdem, unter welchem Standard er kompiliert wird, unterschiedliche Aktionen
Wenn ich eine Basisklasse (oder Schnittstellenklasse) deklariere und einen Standardwert für einen oder mehrere ihrer Parameter spezifiziere, müssen die abgeleiteten Klassen dieselben Standardwerte angeben, und wenn nicht, welche Standardwerte werden in den abgeleiteten Klassen angezeigt? Nachtrag:...
Gemäß C ++ '03 Standard 2.3 / 1: Bevor eine andere Verarbeitung stattfindet, wird jedes Auftreten einer der folgenden Sequenzen von drei Zeichen ("Trigraphsequenzen") durch das in Tabelle 1 angegebene Einzelzeichen ersetzt.
Es ist möglich, eine Funktion zu schreiben, die beim Kompilieren mit einem C-Compiler 0 und beim Kompilieren mit einem C ++ - Compiler 1 zurückgibt (die triviale Lösung mit #ifdef __cplusplusist nicht interessant). Beispielsweise: int isCPP() { return sizeof(char) == sizeof 'c'; } Natürlich...
Ich bin sehr verwirrt über Wert- & Standard- & Null-Initialisierung. und vor allem, wenn sie sich für die verschiedenen Standards C ++ 03 und C ++ 11 (und C ++ 14 ) einsetzen. Ich zitiere und versuche, eine wirklich gute Antwort Value- / Default- / Zero-Init C ++ 98 und C ++ 03 hier zu...
Beachten Sie, dass diese Frage ursprünglich im Jahr 2009 gestellt wurde, bevor C ++ 11 ratifiziert wurde und bevor die Bedeutung des autoSchlüsselworts drastisch geändert wurde. Die Antworten beziehen sich nur auf die C ++ 03-Bedeutung von auto- das ist eine spezifizierte Speicherklasse - und...
Ich habe die folgende Klasse in C ++: class a { const int b[2]; // other stuff follows // and here's the constructor a(void); } Die Frage ist, wie ich b in der Initialisierungsliste initialisiere, da ich es nicht im Hauptteil der Funktion des Konstruktors initialisieren kann, weil b ist...
Ich verwende eine API, bei der ich einen Funktionszeiger als Rückruf übergeben muss. Ich versuche, diese API aus meiner Klasse zu verwenden, erhalte jedoch Kompilierungsfehler. Folgendes habe ich von meinem Konstruktor gemacht: m_cRedundencyManager->Init(this->RedundencyManagerCallBack);...