klassenzeiger soll bestimmte memberfunktion aus führen
-
also ich hab da diese klassen:
class k1{
public void f1(){}
}
class k2: public k1{
public void f1(){
printf("foo");
}
}void ausführen(k1 k){
k1* j=&k;
j->f1();}
void main(){
k2 w;
ausführen(w);
}
ist es nun irgendwie möglich, dass das f1 ausgeführrt wird, das foo ausgibt?
-
Das ist kein C++. Könnte C# sein.
In C++ ginge das so:
class k1 { public: virtual void f1() {} }; class k2 : public k1 { public: virtual void f1() { printf("foo"); } }; void ausfuehren(k1 &k) { k.f1(); } int main() { k2 w; ausfuehren(w); }
-
bei mir gehts immer noch nicht, ich sehs nochmal durch
-
kann ich auch zeiger verwenden?
-
alterbro schrieb:
kann ich auch zeiger verwenden?
Vielleicht.
-
könntest du das in deinem beispiel zeigen, ich schafs irgendwie nicht, bei mir gibts immer error
-
alterbro schrieb:
könntest du das in deinem beispiel zeigen, ich schafs irgendwie nicht, bei mir gibts immer error
Nach 267 Posts solltest Du wissen, wie man hier Fragen stellt.
-
ok, sorry
also kompilieren kann ich's noch, doch dann kommtUnbehandelte Ausnahme bei 0x002927c7 in Marvin-Game.exe: 0xC0000005: Zugriffsverletzung beim Lesen an Position 0xcccccccc.
-
du wirst mich jetzt vermutlich hassen, aber es hat sich herausgestellt, dass es nur ein arrayfehler war, sorry