Als «c++» getaggte Fragen

C ++ ist eine universelle Programmiersprache. Es wurde ursprünglich als Erweiterung von C entwickelt und hat eine ähnliche Syntax, ist aber jetzt eine völlig andere Sprache. Verwenden Sie dieses Tag für Fragen zu Code, der mit einem C ++ - Compiler kompiliert werden soll. Verwenden Sie ein versionierungsspezifisches Tag für Fragen zu einer bestimmten Standardversion [C ++ 11], [C ++ 14], [C ++ 17] oder [C ++ 20] usw.

4
Warum NULL von main () zurückgeben?
Ich sehe manchmal Codierer, die NULLals Rückgabewert von main()in C- und C ++ - Programmen verwendet werden, zum Beispiel so etwas: #include <stdio.h> int main() { printf("HelloWorld!"); return NULL; } Wenn ich diesen Code mit gcc kompiliere, erhalte ich die Warnung: Warnung: return macht eine Ganzzahl vom Zeiger ohne Umwandlung …
10 c++  c  null  return  return-value 


1
Werden wir in der Lage sein, Container mit Ansichten in C ++ 20 zu erstellen?
Mit der C ++ 20-Standardversion kommen Bereiche nach C ++. Meine Frage: Werden wir in der Lage sein, (vorhandene) Standardbibliothekscontainer mit einem beliebigen Bereich zu erstellen? Und was noch wichtiger ist, mit Entfernungsansichten? Zum Beispiel wird dies: #include <vector> #include <iostream> #include <ranges> int main() { auto sq = [](int …
10 c++  c++20  range-v3 

1
Speicherverlust während unordered_map :: insert KeyEqual-Ausnahme mit GCC - Verletzung der Sicherheitsgarantie für starke Ausnahmen?
Ich verwende GCC 7.3.1, habe es aber auch auf coliru getestet, von dem ich glaube, dass es Version 9.2.0 ist. Bauen Sie mit folgendem: g++ -fsanitize=address -fno-omit-frame-pointer rai.cpp Hier ist rai.cpp: #include <iostream> #include <unordered_map> int main() { try { struct MyComp { bool operator()(const std::string&, const std::string&) const { …


1
Was bedeuten ^ () {} und ^ {} in C ++?
Ich habe kürzlich einen C ++ - Code wie diesen gelesen: setData(total, &user, ^() { struct dst_t to = {ip, port}; sendData(to, data); }); getData(total, ^{ recvData(data, NULL); }); Ich habe noch nie gesehen ^() {}noch ^{}. Was meinen sie? Eine anonyme Funktion?
10 c++ 


2
Wann benötigen Sie in einem schreibgeschützten Szenario eine nullterminierte Zeichenfolge?
Ich habe mit der std::string_viewBibliothek herumgespielt und darüber nachgedacht, eine Codebasis zu ändern, an der ich gearbeitet habe, um std::string_viewso viel wie möglich zu verwenden. In vielen Threads, die ich zum Thema gelesen habe, wann und wo ich es verwenden soll, std::string_viewanstatt const std::string &. Ich habe viele Antworten gesehen, …


2
VCRUNTIME140_1.dll fehlt nach dem Erstellen der Lösung mit c ++
Ich habe ein kleines Textabenteuer erstellt. Ich habe die Lösung mit Visual Studio Community 2019 unter Verwendung der Release- und x64-Einstellungen erstellt. Ich habe die * .exe-Datei zusammen mit den anderen generierten Dateien komprimiert und an einen anderen PC gesendet, auf dem VS nicht installiert ist, und der im Bild …
10 c++  dll 

2
Nicht übereinstimmender Abzug von Autotypen zwischen verschiedenen C ++ - Compilern
Daher versuche ich, das Punktprodukt ( https://en.wikipedia.org/wiki/Dot_product ) in einer Variante des modernen C ++ zu implementieren, und habe den folgenden Code gefunden: #include <iostream> template<class... Args> auto dot(Args... args) { auto a = [args...](Args...) { return [=](auto... brgs) { static_assert(sizeof...(args) == sizeof...(brgs)); auto v1 = {args...}, i1 = v1.begin(); …

1
Sind erforderliche Ausdrücke zulässig, um Variablen des umschließenden Bereichs zu erfassen?
Im folgenden Beispiel werden die Funktionsargumente verwendet, um mit einem erforderlichen Ausdruck zu testen, ob ein Ausdruck, der sie verwendet, gut geformt ist. Der Requires-Ausdruck benötigt keine Argumente. Es verwendet die Variablen im Funktionsumfang direkt: #include <cstddef> #include <vector> template<typename T> void Resize(T &v, std::size_t const n) { if constexpr …

2
Hat mein Compiler mein nicht verwendetes statisches thread_local-Klassenmitglied ignoriert?
Ich möchte eine Thread-Registrierung in meiner Klasse durchführen, daher entscheide ich mich, eine Überprüfung für die thread_localFunktion hinzuzufügen : #include <iostream> #include <thread> class Foo { public: Foo() { std::cout << "Foo()" << std::endl; } ~Foo() { std::cout << "~Foo()" << std::endl; } }; class Bar { public: Bar() { …

2
Wie kann man beim Verketten die Kopie entfernen?
Ich erstelle eine Klasse von Verkettungstypen, wie das kleine Beispiel unten. Es scheint, dass beim Verketten von Elementfunktionen der Kopierkonstruktor aufgerufen wird. Gibt es eine Möglichkeit, den Aufruf des Kopierkonstruktors loszuwerden? In meinem Spielzeugbeispiel unten ist es offensichtlich, dass ich mich nur mit Provisorien beschäftige und daher "sollte" (vielleicht nicht …
10 c++  c++14  c++17 

3
Warum muss im folgenden Fall kein Typname für abhängige Typen verwendet werden?
Ich habe gelesen , über Bezug von einer Art zu entfernen, hier . Es gibt das folgende Beispiel: #include <iostream> // std::cout #include <type_traits> // std::is_same template<class T1, class T2> void print_is_same() { std::cout << std::is_same<T1, T2>() << '\n'; } int main() { std::cout << std::boolalpha; print_is_same<int, int>(); print_is_same<int, int …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.