C++17 standartlarına göre aşağıdaki C++ programı çalıştırıldığında bu programın çıktısı ne olur?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
#include <iostream> struct Base { virtual void vfunc() = 0; }; struct Der : public Base { void vfunc()override { std::cout << "Der::vfunc()\n"; } }; void Base::vfunc() { std::cout << "Base::vfunc()\n"; } int main() { Der myder; ((Base &)myder).vfunc(); } |
Sorunun yanıtı şu seçeneklerden biri de olabilir:
Sentaks hatası (derleme zamanı hatası)
Tanımsız davranış.
Derleyiciye göre değişir.