C++ programozással kapcsolatban valaki elmagyarázná ezeket?
Figyelt kérdés
Ez lenne a kérdés:
Mit ír ki az alábbi program?
#include <iostream>
#include <array>
using namespace std;
struct A {
void f(){cout<<"a";}
virtual void g(){cout<<"b";f();}
};
struct B : public A{
void g(){cout<<"c";A::g();}
};
struct C : public B{
void f(){cout<<"d";g();}
};
int main(){
array<A*,3> tmp={new A(), new B(), new C()};
for (auto p: tmp){
p–>f(); p–>g();
}
cout << endl;
return 0;
}
Az én válaszom: abaacbadba
A helyes válasz:abaacbaacba
Ez alapján valaki el tudná magyarázni, amit benézek?
2020. dec. 8. 15:16
1/6 anonim válasza:
"Mit ír ki az alábbi program?"
Futtasd le.
2/6 anonim válasza:
Update: Tehát, lefuttatod látod az eredményt. Okés. De, hogy jön ki? Hát helyezz el a programban break pontokat, és step by step debug ... Így a legjobb tanulni.
3/6 tabaki válasza:
Hurrá, sikerült kigyomlálnom az összes rejtett karaktert!
4/6 tabaki válasza:
Szerintem ez lehet:
struct C : public B{
void f(){cout << "d"; 𝐁::g();}
};
5/6 tabaki válasza:
Hát nem. :(
Egyszerűen nálam a te programod is az elvárt eredményt adja...
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!