Suchergebnisse für Anfrage "object-lifetime"

1 die antwort

Verlängert die Lebensdauer des Provisoriums und arbeitet mit blockbasierten Aggregaten, jedoch nicht mit "Neu". Warum?

Hinweis: Diese Frage wurde ursprünglich gestellt alsein Kommentar [https://stackoverflow.com/questions/23892018/extending-temporarys-lifetime-through-rvalue-data-member-works-with-aggregate/23965233#comment36922467_23965233] durchRyan Haining ...

1 die antwort

Warum lebt die Variable nicht lange genug?

Betrachten Sie diese Funktion, die die Dateierweiterung einer bestimmten Datei zurückgeben sollPath. pub fn get_extension<'a>(path: &'a Path) -> Option<&'a str> { let path_str = path.as_str().unwrap(); let ext_pos = ...

18 die antwort

Warum wäre das Verhalten von std :: memcpy für Objekte, die nicht TriviallyCopyable sind, undefiniert?

Vonhttp: //en.cppreference.com/w/cpp/string/byte/memcp [http://en.cppreference.com/w/cpp/string/byte/memcpy]: Wenn die Objekte nicht @ si TriviallyCopyable [http://en.cppreference.com/w/cpp/concept/TriviallyCopyable] (z. B. Skalare, Arrays, ...

TOP-Veröffentlichungen

10 die antwort

Ist es falsch, geschweifte Klammern für Zwecke mit variablem Gültigkeitsbereich zu verwenden?

Ich benutze manchmal geschweifte Klammern, um einen Codeblock zu isolieren und zu vermeiden, dass später versehentlich eine Variable verwendet wird. Zum Beispiel, wenn ich mehrereSqlCommands In der gleichen Methode kopiere ich häufig Codeblöcke, ...

6 die antwort

Lebensdauer von Qt-Objekten

Was sind die Lebensdauern von Qt-Objekten? Sowie QTcpSocket *socket=new QTcpSocket();Wann wird der Sockel zerstört? Sollte ich es benutze delete socket; Gibt es einen Unterschied zu: QTcpSocket socket;Ich konnte keine tiefen Informationen zu ...

6 die antwort

Warum funktioniert der Aufruf von std :: string.c_str () für eine Funktion, die einen String zurückgibt, nicht?

Ich habe den folgenden Code: std::string getString() { std::string str("hello"); return str; } int main() { const char* cStr = getString().c_str(); std::cout << cStr << std::endl; // this prints garbage }Was ich dachte würde passieren ist, ...

6 die antwort

Über das Binden einer const-Referenz auf ein Unterobjekt eines temporären

Mit Code wie #include <iostream> struct P { int x; P(int x) : x(x) {} ~P() { std::cout << "~P()\n"; } }; int main() { auto const& x = P{10}.x; std::cout << "extract\n"; } GCC druckt~P() extract zeigt an, dass die Lebensdauer des Temporärs durch ...

8 die antwort

C # Thread Objektlebensdauer

Angenommen, ich habe einen Code wie folgt: int Main() { if (true) { new Thread(()=> { doSomeLengthyOperation(); }).Start(); } while (true) { //do nothing } }Es gibt 2 Threads, ich werde den Main-Thread den Thread nennen, der die Main () - ...

2 die antwort

ie ist die Reihenfolge der Zerstörung von Funktionsparameter

Dies ist eine Fortsetzung meiner vorherigen FrageWie ist die Reihenfolge der Zerstörung von Funktionsargumenten? [https://stackoverflow.com/q/36992039/3919155] weil ich versehentlich Argumente mit Parametern verwechselt habe. Vielen Dank an ...

12 die antwort

Umgeht man den Konstruktor einer Klasse legal oder führt dies zu undefiniertem Verhalten?

Consider folgenden Beispielcode: class C { public: int* x; }; void f() { C* c = static_cast<C*>(malloc(sizeof(C))); c->x = nullptr; // <-- here } Wenn ich aus irgendeinem Grund mit dem nicht initialisierten Speicher leben müsste (natürlich, wenn ...