In der Programmiersprache C ++ ist die C ++ - Standardbibliothek eine Sammlung von Klassen und Funktionen, die möglicherweise in der Kernsprache geschrieben sind oder nicht und Teil von C ++ sind
Ich möchte a std::stringin Kleinbuchstaben umwandeln . Ich bin mir der Funktion bewusst tolower(), aber in der Vergangenheit hatte ich Probleme mit dieser Funktion und sie ist sowieso kaum ideal, da die Verwendung mit a std::stringdas Durchlaufen jedes Zeichens erfordern würde. Gibt es eine Alternative, die 100% der Zeit funktioniert?
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 mag Vektoren sehr. Sie sind geschickt und schnell. Aber ich weiß, dass dieses Ding namens Valarray existiert. Warum sollte ich einen Valarray anstelle eines Vektors verwenden? Ich weiß, Valarrays haben syntaktischen Zucker, aber abgesehen davon, wann sind sie nützlich?
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, …
Diese Antwort gibt einen schönen Überblick über die Short String Optimization (SSO). Ich möchte jedoch genauer wissen, wie es in der Praxis funktioniert, insbesondere in der libc ++ - Implementierung: Wie kurz muss die Zeichenfolge sein, um sich für SSO zu qualifizieren? Hängt dies von der Zielarchitektur ab? Wie unterscheidet …
Gibt es Fallstricke für bestimmte Betriebssysteme, die ich kennen sollte? Es gibt viele Duplikate ( 1 , 2 , 3 , 4 , 5 ) dieser Frage, die jedoch vor Jahrzehnten beantwortet wurden. Die sehr hoch bewerteten Antworten in vielen dieser Fragen sind heute falsch. Methoden von anderen (alten QS) …
In Abschnitt 23.3.7 Klasse vector<bool>[vector.bool], Absatz 1 heißt es: template <class Allocator> class vector<bool, Allocator> { public: // types: typedef bool const_reference; ... Dieses Programm kann jedoch bei Verwendung von libc ++ nicht kompiliert werden: #include <vector> #include <type_traits> int main() { static_assert(std::is_same<std::vector<bool>::const_reference, bool>{}, "?"); } Außerdem stelle ich fest, …
Was bedeutet der Ausdruck std::string::nposim folgenden Codeausschnitt? found = str.find(str2); if (found != std::string::npos) std::cout << "first 'needle' found at: " << int(found) << std::endl;
Ich habe ein Projekt, das derzeit C ++ 11/14 verwendet, aber es erfordert so etwas wie std::filesystem, das nur in C ++ 17 verfügbar ist, und daher habe ich keine Chance, es derzeit zu verwenden. Ich sehe jedoch, dass es in meinem aktuellen Compiler als verfügbar ist std::experimental::filesystem. Ist es …
Ein Anwendungsfall trat auf, wenn eine bedingte Kopie (1. machbar mit copy_if), aber von einem Wertecontainer zu einem Container mit Zeigern auf diese Werte (2. machbar mit transform) erstellt werden soll. Mit den verfügbaren Tools kann ich es nicht in weniger als zwei Schritten tun : #include <vector> #include <algorithm> …
Ich muss noch einmal iterieren std::queue. www.cplusplus.com sagt: Wenn für eine bestimmte Warteschlangenklasse keine Containerklasse angegeben ist, wird standardmäßig die Standard-Deque der Containerklassenvorlage verwendet. Kann ich also irgendwie zur zugrunde liegenden Deque der Warteschlange gelangen und darüber iterieren?
Definiert die C ++ - Standardbibliothek diese Funktion oder muss ich auf Boost zurückgreifen? Ich suchte im Internet und konnte nichts außer Boost finden, aber ich dachte, ich sollte hier besser fragen.
Nach cppreference , std::type_info::operator!=wird mit C ++ entfernt 20 jedoch std::type_info::operator==bleibt offenbar. Was ist der Grund dafür? Ich könnte zustimmen, dass ein Vergleich auf Ungleichheit bedeutungslos ist, aber ein Vergleich auf Gleichheit wäre genauso bedeutungslos, nicht wahr? In ähnlicher Weise werden operator!=von vielen anderen Standardbibliothekstypen, einschließlich Containern wie std::unordered_map::operator!=und std::unordered_set::operator!=in …
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.