Code: Select all
#include
#include
#include
struct C {
C() {
std::cout
g++ -std=c++23 mre.cc
< /code>
und dann 5-mal auf meinem Arch-Linux-System auszuführen, erhalte ich Werte, die für meinen Zweck vernünftig und nutzbar erscheinen: < /p>
$ ./a.out
140735517651991
$ ./a.out
140720816496503
$ ./a.out
140721435514407
$ ./a.out
140731546749575
$ ./a.out
140737158244279
< /code>
Aber nur weil die Zahlen vernünftig erscheinen und es keinen Absturz oder andere schlechte Dinge gibt, sagen mir natürlich nicht, ob es hier tatsächlich irgendwelche UB gibt. Ich würde mich über eine Erläuterung freuen, warum Reinterpret_Cast
Wenn nein; Ich würde mich über eine Erklärung des Warum nicht und einen Vorschlag für eine bessere (Nicht-UB-) Art und Weise schätzen.>