Problem mit virtueller Funktion

Hallo, ich habe leider ein kleines Problem mit virtuellen Funktionen:

Das ist einfach ein kleines Testprogramm, in dem der Fehler auftritt:

#include "stdafx.h"
#include 

class ursprung
{
public:
 virtual void Ausgabe() { std::cout 

Wenn ich diesen Code kompilieren will kommt immer der Fehler:


    
    C:\testtten.cpp(32) : error C2243: 'type cast' : conversion from 'class abgeleitet1 \*' to 'class ursprung \*' exists, but is inaccessible



Was habe ich da falsch gemacht?

Vielen Dank für eine Antwort,
Manny

Hallo, ich habe leider ein kleines Problem mit virtuellen
Funktionen:

Das ist einfach ein kleines Testprogramm, in dem der Fehler
auftritt:

#include „stdafx.h“
#include

class ursprung
{
public:
virtual void Ausgabe() { std::cout

abgeleitet1* data;
data = new abgeleitet1();

return 0;
}

Wenn ich diesen Code kompilieren will kommt immer der Fehler:

C:\testtten.cpp(32) : error C2243: ‚type cast‘ : conversion
from ‚class abgeleitet1 *‘ to ‚class ursprung *‘ exists, but
is inaccessible

Was habe ich da falsch gemacht?

und das ist dann auch nicht das problem mit virtuellen funktionen

Hallo danke erstmal für die Antwort!!

hmm ursprung mag ja aussehen wie abgeleitet1 ist es aber nicht

> abgeleitet1\* data;  
> data = new abgeleitet1();

und das ist dann auch nicht das problem mit virtuellen
funktionen

Das das so geht ist mir klar, aber leider meinte ich das nicht so, tut mir leid.

Ich will den Pinter „ursprung* data“ für mehrere abgeleitete Klassen benutzen. Deshalb gibt es ja in c++ die Sache mit den virtuellen Funktionen, das dann auch die passende Funktion aufgerufen wird.

http://ladedu.com/cpp/kapitel10_eine_wirkliche_virtu…

Auf dieser Seite wird dieses Thema behandelt und es gibt auch ein Bespiel, das bei meinem Visual C++ Compiler auch funktioniert.
Ich wollte mir jetzt aber ein eigenes Programm schreiben, bei dem Tritt aber der vorher genannte Fehler auf, wie in dem vereinfachten Programm gezeigt.
Was muss ich ändern, damit der Fehler nicht mehr auftritt?

Viele Grüße
Manny

Ich hab den Fehler gefunden :smile:

Ich hätte nicht
class abgeleitet1 : ursprung
schreiben dürfen sondern:

class abgeleitet1 : public ursprung

Viele Grüße
Manny