Tag: c++-faq
Bietet eine kollaborative community bearbeitet C++ – FAQ
6
Antworten
In der folgende code, der Variablen kein Anfangswert und bedruckt diese variable. int var; cout << var << endl; Ausgabe : 2514932 double var; cout << var << endl; Ausgabe : 1.23769 e-307 Ich verstehe nicht, diese
3
Antworten
Diese nicht kompilieren in C++: class A { }; class B : public A { }; ... A *a = new B(); B *b = dynamic_cast<B*>(a); Ich FAQ-freundlich-diese Frage. Die Antwort ist kurz, aber ich denke, ziemlich
2
Antworten
Schrieb ich einfach eine Klasse mit statischen Daten-member, aber jetzt bin ich immer Fehler über "undefined references". Warum funktioniert das nicht? Was mache ich falsch? (Hinweis: Dies ist gedacht, um einen Eintrag zu Stack-Überlauf C++ FAQ. Wenn
3
Antworten
Wie der Titel sagt, Was genau ist der "als-ob" - Regel? Eine typische Antwort würde man erhalten: Die Regel, die erlaubt, dass jede und alle code-Transformationen, die sich nicht ändern das beobachtbare Verhalten des Programms Wir von
1
Antworten
Sehe ich immer wieder Verweis auf die C++ - Standardbibliothek und C++ Standard Template Library (STL). Was ist der Unterschied zwischen Ihnen? Wikipedia erwähnt, dass Sie teilen einige Kopf-aber das ist über es. stackoverflow.com/tags/stl/info. Ersten mal ive
9
Antworten
Was ist der Sinn des const Meldungen wie diese? Die const verwirrt mich. class foobar { public: operator int () const; const char* foo() const; }; InformationsquelleAutor | 2009-04-15
16
Antworten
Ich habe Probleme sehen das Dienstprogramm von Funktionszeigern. Ich denke, es kann nützlich sein, in einigen Fällen (es gibt Sie, nachdem alle), aber ich kann nicht denken Sie an einen Fall, wo es besser bzw. unumgänglich, um
6
Antworten
Ist es möglich, zu verhindern, dass stack-Zuweisung von einem Objekt und nur zulassen, dass er instiated mit "neuen" auf dem heap? Im Gegenteil, das kann auch interessant sein für die Leser: stackoverflow.com/questions/10985/... InformationsquelleAutor | 2008-09-24
11
Antworten
Ich habe gehört, dass C++ - Klassen-member-Funktion-Vorlagen können nicht virtuell sein. Ist das wahr? Wenn Sie können virtuell sein, was ist ein Beispiel für ein Szenario, in dem würde man mit einer solchen Funktion? Ich Stand vor
3
Antworten
Ich habe eine Frage mit meinem code, dessen nur #include Richtlinie war Folgendes: #include <bits/stdc++.h> Mein Lehrer sagte mir, dies zu tun, aber in den Kommentaren wurde ich informiert, dass ich sollte nicht. Warum? Huh. Ich hätte
9
Antworten
Mit dem neuen standard ist, gibt es neue Möglichkeiten, Dinge zu tun, und viele sind schöner als die alten Wege, aber der alte Weg ist noch in Ordnung. Es ist auch klar, dass der neue standard nicht
3
Antworten
Sind die Phasen der Compilierung eines C++ - Programms von der Norm vorgegebenen? Wenn ja, was sind Sie? Wenn nicht, eine Antwort für eine weit verbreitete compiler (ich würde es vorziehen, MSVS) wäre toll. Ich Rede von
4
Antworten
War ich überrascht dies nicht zeigen, bis in meine such-Ergebnisse, ich dachte, jemand habe Sie gefragt, bevor, angesichts der Nützlichkeit der move-Semantik in C++11: Wann muss ich (oder ist es eine gute Idee für mich zu) machen
9
Antworten
Gibt es irgendeinen guten Grund, die leere Runde Klammern (Klammern) ist nicht gültig für den Aufruf der Standard-Konstruktor in C++? MyObject object; //ok - default ctor MyObject object(blah); //ok MyObject object(); //error Mir scheint Sie zu geben
11
Antworten
Warum die sizeof Betreiber zurück eine Größe größer, für eine Struktur, die als die Summe der Größen der Struktur der Mitglieder? Siehe das C-FAQ auf Speicher alighnment. c-faq.com/struct/align.esr.html Anekdote: Es war eine wirkliche computer-virus, der seinen code
16
Antworten
Zitat von Die C++ standard library: a tutorial und Handbuch: Der einzige tragbare Möglichkeit der Verwendung von Vorlagen ist im moment zu implementieren, die Sie in header-Dateien durch die Verwendung von inline-Funktionen. Warum ist das so? (Klarstellung:
2
Antworten
Ist es möglich, sich zu spezialisieren, insbesondere die Mitglieder der template-Klasse? So etwas wie: template <typename T,bool B> struct X { void Specialized(); }; template <typename T> void X<T,true>::Specialized() { ... } template <typename T> void X<T,false>::Specialized()
2
Antworten
C++11 std::move(x) Funktion nicht wirklich nach überhaupt nichts. Es ist nur eine Besetzung an den r-Wert. Warum wurde das gemacht? Ist das nicht irreführend? Erschwerend kommt hinzu, dass die drei-argument std::move tatsächlich bewegt.. Und vergessen Sie nicht
30
Antworten
Mir wurde gesagt, von anderen, die schreiben using namespace std; im code falsch ist, und dass ich verwenden soll std::cout und std::cin direkt statt. Warum ist using namespace std; als eine schlechte Praxis? Ist es ineffizient oder
4
Antworten
Ok, also das Letzte mal schrieb ich " C++ für ein Leben std::auto_ptr war alle std-lib zur Verfügung hatte, und boost::shared_ptr war in aller Munde. Ich sah nie wirklich in die anderen smart-pointer-Typen-boost zur Verfügung. Ich verstehe,
7
Antworten
Hinweis: die Antworten, Die gegeben wurden in einer bestimmten Reihenfolge, aber da viele Nutzer Sortieren Sie die Antworten nach Stimmen, sondern als die Zeit, die Sie gegeben wurden, hier ist ein index der Antworten in der Reihenfolge,
3
Antworten
Habe ich das folgende Stück code, dass der Benutzer aufgefordert, Ihren Namen und den Staat: #include <iostream> #include <string> int main() { std::string name; std::string state; if (std::cin >> name && std::getline(std::cin, state)) { std::cout << "Your
8
Antworten
Was ist ein lambda-Ausdruck in C++11? Wann sollte ich Sie verwenden? Welche Klasse von problem, das Sie lösen nicht möglich war, vor Ihrer Einführung? Wenige Beispiele und Anwendungsfälle nützlich sein. Ich habe gesehen, ein Fall, in dem
11
Antworten
Ich finde mich oft in einer situation, wo ich mich vor mehreren compilation/linker Fehler in einem C++ - Projekt durch einige schlechte design Entscheidungen (durch jemand anderen:) ), die dazu führen, zirkuläre Abhängigkeiten zwischen C++ - Klassen,
8
Antworten
Was bedeutet kopieren eines Objekts bedeuten? Was sind die copy-Konstruktor und die Kopie Zuweisungsoperator? Wann muss ich erklären, Sie selbst? Wie kann ich verhindern, dass Objekte kopiert werden? Bitte Lesen dieser ganze thread und die c++-faq wiki-tag,
17
Antworten
Jemand erwähnt es im IRC als das slicing-problem. InformationsquelleAutor Frankomania | 2008-11-08
22
Antworten
Die Bedeutung der beiden entzieht sich mir. nicht wahr. Eine definition beide definiert und erklärt 😉 Ehrlich gesagt, ich hatte eine Menge ärger zu lernen, war es das, so finde ich nicht die Namen offensichtlich. Ich hatte
8
Antworten
Was bedeutet kopieren eines Objekts bedeuten? Was sind die copy-Konstruktor und die Kopie Zuweisungsoperator? Wann muss ich erklären, Sie selbst? Wie kann ich verhindern, dass Objekte kopiert werden? Bitte Lesen dieser ganze thread und die c++-faq wiki-tag,
4
Antworten
Kürzlich in einem interview war die nächste Ziel-Typ in Frage. int a = 0; cout << a++ << a; Antworten: ein. 10 b. 01 c. Undefiniertes Verhalten Antwortete ich, Wahl b, d.h. die Ausgabe "01". Aber zu
4
Antworten
Was ist copy elision? Was ist (named) return value optimization? Was haben Sie zu bedeuten? In welchen Situationen Sie auftreten? Was sind Einschränkungen? Wenn Sie waren, verwiesen auf diese Frage, sind Sie wahrscheinlich auf der Suche nach
29
Antworten
Diese Frage wurde bereits aufgefordert, im Rahmen von C#/.Net. Nun möchte ich lernen, die Unterschiede zwischen einem struct und einer Klasse in C++. Bitte besprechen Sie die technischen Unterschiede sowie Gründe für die Wahl der einen oder
4
Antworten
Es gibt ein bekanntes Bild (cheat sheet) namens "C++ Container-Wahl". Es ist ein Fluss-Diagramm, wählen Sie die beste container für die gewünschte Nutzung. Weiß jemand, ob es bereits ein C++11-version? Dies ist die Vorherige: Noch nie gesehen
16
Antworten
Sagen wir, ich habe folgende class X wo ich zurückgeben möchten, Zugang zu einem internen Mitglied: class Z { //details }; class X { std::vector<Z> vecZ; public: Z& Z(size_t index) { //massive amounts of code for validating
7
Antworten
Hörte ich ein paar Leute empfehlen, verwenden enum Klassen in C++ wegen Ihrer Art Sicherheit. Aber was bedeutet dies wirklich? Wenn jemand behauptet, dass einige Programmier-Konstrukt ist "böse", Sie versuchen, Sie zu entmutigen denken für sich selbst.
9
Antworten
Gezeigt, in diese Antwort ich vor kurzem gepostet, ich scheine verwirrt zu sein über das Dienstprogramm (oder deren fehlen) von volatile in multi-threaded-Programmierung zusammenhängen. Mein Verständnis ist dieses: jedes mal, wenn eine variable geändert werden kann, die
13
Antworten
Was ist ein smart-pointer und Wann sollte ich Sie verwenden? Überprüfen Sie heraus diese Frage:<br> Smart Pointer: Oder wem gehört Sie baby Beachten Sie, dass die Implementierung von std::auto_ptr in Visual Studio 2005 ist schrecklich gebrochen. <br>http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=98871<br>
4
Antworten
Was sind einige gute Erklärungen zu dem, was argument dependent lookup? Viele Leute nennen es auch Koenig-Lookup als auch. Vorzugsweise würde ich gerne wissen: Warum ist es eine gute Sache? Warum ist es eine schlechte Sache? Wie
5
Antworten
Was sind die iterator-Aufhebungs-Regeln für C++ Container? Vorzugsweise in einer zusammenfassenden Liste format. (Hinweis: Dies ist gedacht, um einen Eintrag zu Stack-Überlauf C++ FAQ. Wenn Sie möchten, dass die Kritik der Idee der Bereitstellung eines FAQ in
5
Antworten
Jemand brachte dieser Artikel, um meine Aufmerksamkeit, dass Ansprüche (ich bin paraphrasieren) das STL-Begriff missbraucht wird, um beziehen sich auf die gesamte C++ Standard-Bibliothek instead of die Teile, die aufgenommen wurden von der SGI STL. (...) es
5
Antworten
Was ist die richtige Signatur des main - Funktion in C++? Was ist der richtige Rückgabetyp, und was bedeutet es, einen Wert zurückgegeben main? Was sind die erlaubten parameter-Typen, und was sind Ihre Bedeutungen? Ist dieses system-spezifische?
4
Antworten
Ich habe gerade einen Kommentar in diese Antwort sagen, dass mit iostream::eof in einer Schleife, Bedingung ist "nahezu sicher falsch". Ich verwende in der Regel so etwas wie while(cin>>n) - ich glaube, das implizit prüft EOF. Warum
30
Antworten
Ich weiß Verweise sind syntaktischer Zucker, also code ist einfacher zu Lesen und zu schreiben. Aber was sind die Unterschiede? Zusammenfassung von Antworten und links unten: Ein Zeiger kann neu belegt werden eine beliebige Anzahl von Zeiten
5
Antworten
Ohne Bezugnahme auf ein Buch, kann mir jemand bitte eine gute Erklärung für CRTP mit einem code-Beispiel? Lesen CRTP Fragen auf ALSO: stackoverflow.com/questions/tagged/crtp. Das könnte Ihnen einige Idee. Wenn er das tut, findet er seine eigene Frage.
8
Antworten
Was bedeutet kopieren eines Objekts bedeuten? Was sind die copy-Konstruktor und die Kopie Zuweisungsoperator? Wann muss ich erklären, Sie selbst? Wie kann ich verhindern, dass Objekte kopiert werden? Bitte Lesen dieser ganze thread und die c++-faq wiki-tag,
6
Antworten
In Vorlagen, wo und warum tun, ich habe zu typename und template auf abhängige Namen? Was genau angewiesen sind Namen sowieso? Ich habe den folgenden code: template <typename T, typename Tail> //Tail will be a UnionNode too.
3
Antworten
Kam über einen Vorschlag namens "rvalue Referenz für *diese" ertönt C++11-status-Seite. Ich habe einiges gelesen über rvalue-Referenzen und verstanden, aber ich glaube nicht, dass ich weiß, über diese. Ich konnte auch nicht viel Ressourcen auf dem web
1
Antworten
C++17 ist nun feature complete, also kaum erleben große Veränderungen. Hunderte von Vorschlägen wurden vorgebracht für C++17. Welche features wurden Hinzugefügt, um C++ in C++17? Bei einem C++ - compiler unterstützt C++1z", welche features verfügbar sein, wenn
4
Antworten
Ok, also das Letzte mal schrieb ich " C++ für ein Leben std::auto_ptr war alle std-lib zur Verfügung hatte, und boost::shared_ptr war in aller Munde. Ich sah nie wirklich in die anderen smart-pointer-Typen-boost zur Verfügung. Ich verstehe,
3
Antworten
Wenn die Kurse unten waren, nicht Vorlagen, konnte ich einfach haben x im derived Klasse. Allerdings mit dem code unten, habe ich müssen Verwendung this->x. Warum? template <typename T> class base { protected: int x; }; template
11
Antworten
In vielen C/C++ - Makros sehe ich den code des Makros, eingehüllt in das, was scheint wie eine sinnlose do while Schleife. Hier sind Beispiele. #define FOO(X) do { f(X); g(X); } while (0) #define FOO(X) if