Warum sollte ich in der Praxis den einen oder anderen bevorzugen? Was sind technische Unterschiede, außer dass std::threades sich um eine Klasse
Warum sollte ich in der Praxis den einen oder anderen bevorzugen? Was sind technische Unterschiede, außer dass std::threades sich um eine Klasse
Was ist in C ++ der Typ eines std::map<>::iterator? Wir wissen, dass ein Objekt itvom Typ std::map<A,B>::iteratoreine Überladung hat, operator ->die a zurückgibt std::pair<A,B>*, und dass das std::pair<>ein firstund ein secondMitglied hat. Aber was entsprechen diese...
Was ist der Unterschied zwischen atanund atan2in C
Was ist ein "Namespace-Alias" in C ++? Wie wird es
Ich versuche, ein einfaches Beispiel zum Arbeiten zu bringen, um zu verstehen, wie man es benutzt std::enable_if. Nachdem ich diese Antwort gelesen hatte , dachte ich, es sollte nicht zu schwierig sein, ein einfaches Beispiel zu finden. Ich möchte verwenden std::enable_if, um zwischen zwei...
Ich habe in einigen Artikeln gelesen, dass rohe Zeiger fast nie verwendet werden sollten. Stattdessen sollten sie immer in intelligente Zeiger eingeschlossen werden, unabhängig davon, ob es sich um Gültigkeitsbereichs- oder gemeinsam genutzte Zeiger handelt. Ich bemerkte jedoch, dass Frameworks...
Ich bevorzuge zwei Möglichkeiten: void copyVecFast(const vec<int>& original) { vector<int> newVec; newVec.reserve(original.size()); copy(original.begin(),original.end(),back_inserter(newVec)); } void copyVecFast(vec<int>& original) { vector<int> newVec;...
Das Überladen von Operatoren in C ++ wird von vielen als A Bad Thing (tm) angesehen und als Fehler, der in neueren Sprachen nicht wiederholt werden darf. Sicherlich war es eine Funktion, die speziell beim Entwerfen von Java weggelassen wurde. Nachdem ich angefangen habe, Scala zu lesen, stelle ich...
Ich bin ziemlich verwirrt mit dem dynamic_castSchlüsselwort in C ++. struct A { virtual void f() { } }; struct B : public A { }; struct C { }; void f () { A a; B b; A* ap = &b; B* b1 = dynamic_cast<B*> (&a); // NULL, because 'a' is not a 'B' B* b2 = dynamic_cast<B*> (ap); // 'b'...
C ++ 0x zeigt ein Beispiel für die Verwendung von std::forward: template<class T> void foo(T&& arg) { bar(std::forward<T>(arg)); } Wann ist es immer vorteilhaft zu verwenden std::forward? Außerdem muss es &&in der Parameterdeklaration verwendet werden. Ist es in allen...
In einer C ++ - Frage zu Optimierung und Codestil bezogen sich mehrere Antworten auf "SSO" im Zusammenhang mit der Optimierung von Kopien von std::string. Was bedeutet SSO in diesem Zusammenhang? Ganz klar nicht "Single Sign On". "Shared String Optimization"
Lange Version... Ein Mitarbeiter behauptete heute, nachdem er meine Verwendung while (1)in einem Perl-Skript gesehen hatte, for (;;)das schneller ist. Ich argumentierte, dass sie gleich sein sollten, in der Hoffnung, dass der Dolmetscher alle Unterschiede optimieren würde. Ich habe ein Skript...
Ich verstehe die Notwendigkeit eines virtuellen Destruktors. Aber warum brauchen wir einen reinen virtuellen Destruktor? In einem der C ++ - Artikel hat der Autor erwähnt, dass wir einen reinen virtuellen Destruktor verwenden, wenn wir eine Klasse abstrakt machen möchten. Wir können eine Klasse...
Ich habe eine Klasse mit einem private char str[256]; und dafür habe ich einen expliziten Konstruktor: explicit myClass(const char *func) { strcpy(str,func); } Ich nenne es als: myClass obj("example"); Wenn ich dies kompiliere, erhalte ich die folgende Warnung: veraltete Konvertierung von...
Ich weiß, dass die C- und C ++ - Standards viele Aspekte der Sprachimplementierung definiert lassen, nur weil es bei einer Architektur mit anderen Merkmalen sehr schwierig oder unmöglich wäre, einen standardkonformen Compiler dafür zu schreiben. Ich weiß, dass vor 40 Jahren jeder Computer seine...
C ++ - Vorlagen - In der vollständigen Anleitung, 2. Ausgabe , wird die maximale Vorlage vorgestellt: template<typename T> T max (T a, T b) { // if b < a then yield a else yield b return b < a ? a : b; } Und es erklärt die Verwendung “b < a ? a : b”anstelle von “a < b ? b :...
Java hat Generika und C ++ bietet ein sehr starkes Programmiermodell mit templates. Was ist dann der Unterschied zwischen C ++ - und
Ich habe über Parser und Parsergeneratoren gelesen und diese Aussage auf der LR-Parsing-Seite von Wikipedia gefunden: Viele Programmiersprachen können mit einer Variation eines LR-Parsers analysiert werden. Eine bemerkenswerte Ausnahme ist C ++. Wieso ist es so? Welche besondere Eigenschaft von C...
Wie überprüfe ich in Qt, ob ein bestimmter Ordner im aktuellen Verzeichnis vorhanden ist? Wie erstelle ich einen leeren Ordner, wenn er nicht vorhanden
Aktualisiert, siehe unten! Ich habe gehört und gelesen, dass C ++ 0x einem Compiler erlaubt, "Hallo" für das folgende Snippet zu drucken #include <iostream> int main() { while(1) ; std::cout << "Hello" << std::endl; } Es hat anscheinend etwas mit Threads und...