Pointer in Funktionsaufruf
-
Hi everyone
wenn ich folgenden Code ausführe:
vector<CEwbMeter *> ewbArray; // ... // Vektor befüllen // ... ewbArray.at(0)->rd_Data(true);klappt alles wunderbar und die Daten werden eingelesen (rd_Data nimmt über ein Interface Kontakt zu unserem Zählergerät auf und speichert die erhaltenen Daten in einer Membervariable der CEwbMeter-Klasse bzw. einer davon abgeleiteten Klasse).
Mache ich es allerdings so:
vector<CEwbMeter *> ewbArray; // ... // Vektor befüllen // ... stdOtp.otp_HandReadout(ewbArray.at(0), argv, argc);wobei otp_HandReadout folgende Memberfunktion ist:
void CEwbOutput::otp_HandReadout(CEwbMeter *m_Ewb, char *m_argv[], int m_argc) const { // ... cout << "Diese Zeile wird auf der Konsole noch angezeigt" << endl; m_Ewb->rd_Data(true); // ... }Gibt mein Programm eiskalt einen Segmentation Fault aus. Woran kann das liegen?
Besten Dank und Gruss
Kessi
-
Ziemlich undurchsichtig das Ganze.
Warum schaust du nicht mit nem debugger nach was schiefläuft?
Solche SegFaults lassen sich dann eigentlich relativ schnell finden.