Die Frage passt wirklich in den Titel: Ich bin gespannt, was der technische Grund für diesen Unterschied ist, aber auch die Gründe? std::shared_ptr<void> sharedToVoid; // legal; std::unique_ptr<void> uniqueToVoid; //
Die Frage passt wirklich in den Titel: Ich bin gespannt, was der technische Grund für diesen Unterschied ist, aber auch die Gründe? std::shared_ptr<void> sharedToVoid; // legal; std::unique_ptr<void> uniqueToVoid; //
Ich weiß, dass Zeiger in Go die Mutation der Argumente einer Funktion ermöglichen, aber wäre es nicht einfacher gewesen, wenn sie nur Referenzen (mit geeigneten const- oder veränderlichen Qualifikationsmerkmalen) übernommen hätten. Jetzt haben wir Zeiger und für einige eingebaute Typen wie Karten...
Unter welchen Umständen möchten Sie Code dieser Art in c ++ verwenden? void foo(type *&in) {...} void fii() { type *choochoo; ...
Angenommen, ich habe den folgenden Code: void* my_alloc (size_t size) { return new char [size]; } void my_free (void* ptr) { delete [] ptr; } Ist das sicher? Oder muss vor dem Löschen ptrgegossen werden
Ich habe Probleme, die Nützlichkeit von Funktionszeigern zu erkennen. Ich denke, es kann in einigen Fällen nützlich sein (sie existieren schließlich), aber ich kann mir keinen Fall vorstellen, in dem es besser oder unvermeidlich ist, einen Funktionszeiger zu verwenden. Können Sie ein Beispiel für...
Angenommen, ich habe eine Klasse mit einer Methode, die a zurückgibt shared_ptr. Was sind die möglichen Vor- und Nachteile einer Rücksendung nach Referenz oder Wert? Zwei mögliche Hinweise: Frühe Objektzerstörung. Wenn ich die shared_ptrby (const) -Referenz zurückgebe, wird der Referenzzähler nicht...
Ich habe mit C ++ Lambdas und deren impliziter Konvertierung in Funktionszeiger gespielt. Mein Startbeispiel war, sie als Rückruf für die ftw-Funktion zu verwenden. Dies funktioniert wie erwartet. #include <ftw.h> #include <iostream> using namespace std; int main() { auto callback =...
Wie erstelle ich ein Wörterbuch, in dem ich Funktionen speichern kann? Vielen Dank. Ich habe über 30 Funktionen, die vom Benutzer ausgeführt werden können. Ich möchte die Funktion folgendermaßen ausführen können: private void functionName(arg1, arg2, arg3) { // code }...
Ich versuche zu verstehen, wie es std::unique_ptrfunktioniert und dafür habe ich dieses Dokument gefunden. Der Autor geht von folgendem Beispiel aus: #include <utility> //declarations of unique_ptr using std::unique_ptr; // default construction unique_ptr<int> up; //creates an empty...
Ich habe auto_ptrgehört, dass es in C ++ 11 veraltet ist. Was ist der Grund dafür? Auch ich würde gerne den Unterschied zwischen auto_ptrund kennen
Ich habe den Begriff "Fettzeiger" bereits in mehreren Zusammenhängen gelesen, bin mir aber nicht sicher, was er genau bedeutet und wann er in Rust verwendet wird. Der Zeiger scheint doppelt so groß zu sein wie ein normaler Zeiger, aber ich verstehe nicht warum. Es scheint auch etwas mit...
Kontext: Ich versuche, meinen Kopf um Zeiger zu wickeln. Wir haben sie erst vor ein paar Wochen in der Schule gesehen und als ich heute übte, bin ich auf einen Dummkopf gestoßen. Problem, es kann für Sie sehr einfach sein, aber ich habe wenig bis gar keine Programmiererfahrung. Ich habe in SO...
Ich habe kürzlich beschlossen, dass ich nur endlich C / C ++ lernen muss, und es gibt eine Sache, die ich über Zeiger oder genauer ihre Definition nicht wirklich verstehe. Wie wäre es mit diesen Beispielen: int* test; int *test; int * test; int* test,test2; int *test,test2; int * test,test2; Nach...
Gibt es eine Möglichkeit (natürlich programmatisch) festzustellen, ob ein bestimmter Zeiger "gültig" ist? Das Überprüfen auf NULL ist einfach, aber was ist mit Dingen wie 0x00001234? Beim Versuch, diese Art von Zeiger zu dereferenzieren, tritt eine Ausnahme / ein Absturz auf. Eine...
Ich hatte Dinge wie geschrieben char *x=NULL; unter der Annahme, dass char *x=2; würde einen charZeiger auf Adresse 2 erstellen . Im Programmier-Tutorial für GNU C heißt es jedoch, dass int *my_int_ptr = 2;der ganzzahlige Wert 2bei der my_int_ptrZuweisung an eine beliebige zufällige Adresse...
Ich habe gesehen, dass der Bereich den Schlüssel und die "Kopie" des Werts zurückgibt. Gibt es eine Möglichkeit für diesen Bereich, die Adresse des Artikels zurückzugeben? Beispiel package main import "fmt" type MyType struct { field string } func main() { var array [10]MyType for _, e...
Diese Frage passt derzeit nicht zu unserem Q & A-Format. Wir erwarten, dass die Antworten durch Fakten, Referenzen oder Fachwissen gestützt werden, aber diese Frage wird wahrscheinlich zu Debatten, Argumenten, Umfragen oder erweiterten Diskussionen führen. Wenn Sie der Meinung...
Was ist die beste Methode, um shared_ptreinen abgeleiteten Typ an eine Funktion zu übergeben, die shared_ptreinen Basistyp verwendet? Ich übergebe im Allgemeinen shared_ptrs als Referenz, um eine unnötige Kopie zu vermeiden: int foo(const shared_ptr<bar>& ptr); aber das funktioniert...
Herr Lidström und ich hatten einen Streit :) Die Behauptung von Herrn Lidström ist, dass für ein Konstrukt shared_ptr<Base> p(new Derived);Base keinen virtuellen Destruktor benötigt: Armen Tsirunyan : "Wirklich? Wird der shared_ptr korrekt bereinigt? Könnten Sie bitte in diesem Fall zeigen,...
Lasst uns annehmen, int *p; int a = 100; p = &a; Was macht der folgende Code eigentlich und wie? p++; ++p; ++*p; ++(*p); ++*(p); *p++; (*p)++; *(p)++; *++p; *(++p); Ich weiß, das ist in Bezug auf die Codierung etwas chaotisch, aber ich möchte wissen, was tatsächlich passieren wird, wenn wir so...