Fehler mein Ausführen des Programmes
-
Hallo
die Fehlermeldungen sind doch eindeutig.
Du kannst über einen Zeiger vom Typ elektro nicht auf Elemente zugreifen, die erst der Klasse computer angehören.Desweiteren hast du zwar einen Zeiger vom Typ elektro, du erstellst aber nirgends eine gültige Instanz, nachdem der User die Auswahl getroffen hat.
bis bald
akari
-
GAR NICHT WEITERGEHOLFEN.....................
ICH KOMME NICHT WEITER MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN !!!!
ICH BIN DOOOOOOOOOOF deshalb so helfen
das ich es einfach einfügen sollll............ maannnnnnnnnnnn
BITTTTTTE ICH KOMME HIER NICHT KLAR ::: !
-
HEY HO,
das würde mich aber auch interessieren, wie man das machen sollten.
Könnte es jemand evtl. richtig stellen?
-
#include <string.h> #include <iostream.h> #include "elektro.h" int main() { int auswahl; float geschw; int grafikram; elektro *e_zeiger=new computer; elektro *e_zeiger2=new elektro; computer *c_zeiger=dynamic_cast<elektro*>(e_zeiger); cout << "Waehle zwischen 1 und 2: " << endl; cin >> auswahl; switch(auswahl) { case 1:e_zeiger = new elektro; cout << "Gib Geschw ein: " << endl; cin >> geschw; e_zeiger->setGeschwindigkeit(geschw); cout << "Geschwindigkeit ist " << e_zeiger->getGeschwindigkeit() <<endl; break; case 2:c_zeiger = new computer; cout << "Grafikspeischer eingeben " << endl; cin >> grafikram; c_zeiger->setGrafikspeicher(grafikram); cout << "Grafikspeicher " << c_zeiger->getGrafikspeicher() << endl; } return 0; }Ich habe das jetzt so gemacht , aber der sagt mir aus,,, das ich immer noch irgenwdelche fehler habeeeeeeeeeeeeeeeeeeeeeeeeeeeee..
son scheiß
--------------------Konfiguration: elektro - Win32 Debug--------------------
Kompilierung läuft...
main.cpp
C:\Dokumente und Einstellungen\Robtschick\Desktop\uebung\elektro\main.cpp(15) : warning C4541: 'dynamic_cast' fuer polymorphen Typ 'class elektro' mit /GR- verwendet; unvorhersehbares Verhalten moeglich
C:\Dokumente und Einstellungen\Robtschick\Desktop\uebung\elektro\main.cpp(15) : error C2440: 'initializing' : 'class elektro *' kann nicht in 'class computer *' konvertiert werden
Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
Fehler beim Ausführen von cl.exe.elektro.exe - 1 Fehler, 1 Warnung(en)
BITTE SO HELFEN DAS ICH ES EINSETZTEN KANNN PLS !!!!
-
#include <string.h> #include <iostream.h> #include "elektro.h" int main() { int auswahl; float geschw; int grafikram; elektro *e_zeiger=new computer; elektro *e_zeiger2=new elektro; computer *c_zeiger=dynamic_cast<elektro*>(e_zeiger); cout << "Waehle zwischen 1 und 2: " << endl; cin >> auswahl; switch(auswahl) { case 1:e_zeiger = new elektro; cout << "Gib Geschw ein: " << endl; cin >> geschw; e_zeiger->setGeschwindigkeit(geschw); cout << "Geschwindigkeit ist " << e_zeiger->getGeschwindigkeit() <<endl; break; case 2:c_zeiger = new computer; cout << "Grafikspeischer eingeben " << endl; cin >> grafikram; c_zeiger->setGrafikspeicher(grafikram); cout << "Grafikspeicher " << c_zeiger->getGrafikspeicher() << endl; } return 0; }Ich habe das jetzt so gemacht , aber der sagt mir aus,,, das ich immer noch irgenwdelche fehler habeeeeeeeeeeeeeeeeeeeeeeeeeeeee..
son scheiß
--------------------Konfiguration: elektro - Win32 Debug--------------------
Kompilierung läuft...
main.cpp
C:\Dokumente und Einstellungen\Robtschick\Desktop\uebung\elektro\main.cpp(15) : warning C4541: 'dynamic_cast' fuer polymorphen Typ 'class elektro' mit /GR- verwendet; unvorhersehbares Verhalten moeglich
C:\Dokumente und Einstellungen\Robtschick\Desktop\uebung\elektro\main.cpp(15) : error C2440: 'initializing' : 'class elektro *' kann nicht in 'class computer *' konvertiert werden
Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
Fehler beim Ausführen von cl.exe.elektro.exe - 1 Fehler, 1 Warnung(en)
BITTE SO HELFEN DAS ICH ES EINSETZTEN KANNN PLS !!!!
-
Kann mir nicht jemand per icq helfen oder so ???
146289675
-
Robtschick schrieb:
C:\Dokumente und Einstellungen\Robtschick\Desktop\uebung\elektro\main.cpp(15) : error C2440: 'initializing' : 'class elektro *' kann nicht in 'class computer *' konvertiert werden
Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder FunktionsformatDa steht doch eh schon was du machen sollst. Lies dir mal ein Grundlagen Turorial zu OOP durch...
BITTE SO HELFEN DAS ICH ES EINSETZTEN KANNN PLS !!!!
Und der Sinn des Ganzen?
-
DU schlaukopf , sag es du mir doch mal biiiiiiiiiiiiiiittttte,
ich gehe hier noch kaputt mit diesem behinderten missgeburten c++ programm
ich hasse das wie die hölle und ihr quelt mich hier.........verate mir doch mein fehler.. oder seit ihr genauso bekloptt wie ich ?!
ICH VERSTEHE DIESEN UNSINN VON PROGRAMIERUNG NICHT....................
also schreib mir doch jemand mal eine lösung ...............
-
Wenn du es wie die Hölle hast warum lässt du es nicht einfach?
Und ich bin mir sicher dass dir jetzt mehr Leute helfen wollen. Und wir wollen helfen, aber du musst dich schon einbringen.
-
Ich freue mich ja auch auf jede antwort, aber ich verstehe das einfach nicht, weil die das nicht in der schule hatten,
und ich dieses dynamic_cast das erste mal gehört habe.. ich habe auch alles gelsen darüber
es gibt eins das ist das von unterklassen zu oberklassen von oberklassen zu unterklasse vererben... aber man sollte es im seltenen falle tun... aber keiner sagt mir eine andere möglichkeit.. wie mache ich es denn mit diesen virtuellen dingern ?