Casten und Funktion aufrufen
-
Hallo,
Ist das undefiniertes Verhalten?
template<typename T> struct fxx{ T x; void foo(){ std::cout << "good\n"; } }; int main(){ fxx<int> x; (*(fxx<double>*)&x).foo(); return 0; }
-
Was sagt dein Compiler, wenn du C++- statt C-Casts verwendest?
-
Mit static_cast<> nichts, probiert mit G++ und Clang.
Warnungen sind angeschaltet.
-
stateofmind schrieb:
Mit static_cast<> nichts, probiert mit G++ und Clang.
Und ja, es ist undefiniert.
-
Arcoth schrieb:
Dann hab ich wohl den falschen Button erwischt.
Und ja, es ist undefiniert.
Ausführlich.