Ich habe von anderen gesagt , dass das Schreiben using namespace std;in Code falsch ist, und dass ich verwenden sollte std::coutund std::cinstattdessen direkt. Warum wird dies using namespace std;als schlechte Praxis angesehen? Ist es ineffizient oder besteht die Gefahr, dass mehrdeutige Variablen deklariert werden (Variablen, die denselben Namen wie eine …
Ich möchte nur überprüfen, ob ein Element im Vektor vorhanden ist oder nicht, damit ich mich mit jedem Fall befassen kann. if ( item_present ) do_this(); else do_that();
Jemand machte mich auf diesen Artikel aufmerksam, der behauptet (ich paraphrasiere), dass der STL-Begriff missbraucht wird, um auf die gesamte C ++ - Standardbibliothek anstatt auf die Teile zu verweisen, die aus SGI STL stammen. (...) es bezieht sich auf die "STL", obwohl nur noch sehr wenige Menschen die STL …
Ich habe Code, der so aussieht: for (std::list<item*>::iterator i=items.begin();i!=items.end();i++) { bool isActive = (*i)->update(); //if (!isActive) // items.remove(*i); //else other_code_involving(*i); } items.remove_if(CheckItemNotActive); Ich möchte inaktive Elemente sofort nach dem Aktualisieren entfernen, um ein erneutes Durchlaufen der Liste zu vermeiden. Wenn ich jedoch die auskommentierten Zeilen hinzufüge, wird folgende Fehlermeldung i++angezeigt: …
C ++ 11-Vektoren haben die neue Funktion emplace_back. Im Gegensatz push_backzu Compiler-Optimierungen, um Kopien zu vermeiden, wird emplace_backdie perfekte Weiterleitung verwendet, um die Argumente direkt an den Konstruktor zu senden und ein Objekt an Ort und Stelle zu erstellen. Es scheint mir, dass emplace_backalles alles push_backkann, aber manchmal wird es …
Ich übe die Verwendung mehrerer Dateien und Header-Dateien usw. Ich habe also dieses Projekt, das zwei Zahlen verwendet und diese dann hinzufügt. Ziemlich einfach. Hier sind meine Dateien: main.cpp #include <iostream> #include "add.h" int main() { int x = readNumber(); int y = readNumber(); writeAnswer(x + y); return(0); } io.cpp …
Ist es in C ++ möglich, einen Teil eines Strings durch einen anderen zu ersetzen? Grundsätzlich möchte ich dies tun: QString string("hello $name"); string.replace("$name", "Somename"); Ich möchte aber die Standard C ++ - Bibliotheken verwenden.
Ich habe diese Funktion geschrieben, um eine Zeile aus einer Datei zu lesen: const char *readLine(FILE *file) { if (file == NULL) { printf("Error: file pointer is null."); exit(1); } int maximumLineLength = 128; char *lineBuffer = (char *)malloc(sizeof(char) * maximumLineLength); if (lineBuffer == NULL) { printf("Error allocating memory for …
Was sind einige wirklich gute Gründe, sich std::allocatorfür eine kundenspezifische Lösung zu entscheiden? Sind Sie auf Situationen gestoßen, in denen dies für Korrektheit, Leistung, Skalierbarkeit usw. unbedingt erforderlich war? Irgendwelche wirklich klugen Beispiele? Benutzerdefinierte Allokatoren waren schon immer eine Funktion der Standardbibliothek, für die ich nicht viel Bedarf hatte. Ich …
Ich verstehe, dass dies stringein Mitglied des stdNamespace ist. Warum tritt also Folgendes auf? #include <iostream> int main() { using namespace std; string myString = "Press ENTER to quit program!"; cout << "Come up and C++ me some time." << endl; printf("Follow this command: %s", myString); cin.get(); return 0; } …
Ich muss einen Satz durchgehen und Elemente entfernen, die vordefinierte Kriterien erfüllen. Dies ist der Testcode, den ich geschrieben habe: #include <set> #include <algorithm> void printElement(int value) { std::cout << value << " "; } int main() { int initNum[] = { 0, 1, 2, 3, 4, 5, 6, 7, …
Sollte ich beim Implementieren einer Rückruffunktion in C ++ weiterhin den Funktionszeiger im C-Stil verwenden: void (*callbackFunc)(int); Oder sollte ich std :: function verwenden: std::function< void(int) > callbackFunc;
Ich mache eine einfache Anwendung, die farbige Ausgabe erfordert. Wie kann ich meine Ausgabe farbig machen wie Emacs und Bash? Windows interessiert mich nicht, da meine Anwendung nur für UNIX-Systeme ist.
Ich habe derzeit eine std::map<std::string,int>, die einen ganzzahligen Wert in einer eindeutigen Zeichenfolgenkennung speichert, und ich schaue mit der Zeichenfolge nach. Es macht meistens das, was ich will, außer dass es die Einfügereihenfolge nicht verfolgt. Wenn ich also die Karte iteriere, um die Werte auszudrucken, werden sie nach der Zeichenfolge …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.