000
09.01.2014, 15:59 Uhr
Daniel_P
|
Sehr geehrte Community,
ich bin ein Anfänger auf dem Gebiet der C++ Programmierung. Im Studium nutzen wir Visual Studio als Softwaretool dafür. Mein folgender Quellcode sollte mir lediglich zum testen einiger Funktionalitäten dienen (Referenzübergabe, Überladung von Memberfunktionen und das Handling von Klassen)
der Quellcode:
Main.cpp ___________________________________________________________________________
#include <iostream> #include "class.cpp" using namespace std;
void main(void) { int a,b,x; a = 100; b = 200; int& ref1 = a; int& ref2 = b; Test_Klasse Test1, Test2;
Test1.show_res(ref1, ref2);
cin >> x; //dient nur Programmstop bei der Ausführung } ____________________________________________________________________________
class.cpp ____________________________________________________________________________
#include <iostream> using namespace std;
void Test_Klasse::setTESTVAR(double& var1,double& var2) { int temp = var1; var1 = var2; var2 = temp; };
int Test_Klasse:: setTESTVAR(int var3, int var4) { int temp = var3; var4 = var3; var4 = temp;
return temp; };
void Test_Klasse::show_res(int& ref1, int& ref2) { cout <<"Referenzwert 1"<< ref1 << endl; cout << "Referenzwert 2" << ref2 << endl; };
class Test_Klasse { public: int test1 = 0, test2 = 1, test3 = 2; void setTESTVAR(double& var1, double& var2); int setTESTVAR(int var3, int var4); void show_res(int& ref1, int& ref2); private: double& ABC = 5,double& CDE = 10,double& EFG = 20;
}; ___________________________________________________________________________
Zur Erklärung...das Ziel meiner Übung war...eine Funktion setTESTVAR zu Überladen um die Auswirkungen von Referenzen bei der Übergabe an diese darzustellen und später auszugeben. Deshalb erfolgt einmal eine Übergabe von zwei Referenzen und zum anderen die Übergabe zweier int Werte. Die private Attribute der Klasse sollten dabei später der Referenzübergabe an die Methode dienen und show_res der Ausgabe dieser. Desweiteren sollte der erste Testlauf mit einem Aufruf der Funktion show_res aus dem Main Programm erfolgen und es sollten zwei dort definierte Referenzen übergeben werden.
// Ich bitte meinen wirren Stil zu entschuldigen.
Nun zu meinen Fragen. Der Compiler sagt mir im Definitionsteil der Methoden das diese nicht Teil der Klasse Test_Klasse sind ?! Wo liegt mein Fehler. Und die Zweite Frage zu den Konstruktoren und Destruktoren...wo müssen sie gesetzt werden? und wie würden sie in meinem Falle aussehen? Ich steige einfach nicht dahinter wonach sich der Aufbau etc eines Konstruktors richtet und was er im einzelnen für Auswirkungen hat?
Für eine Antwort wäre ich sehr dankbar und nochmals entschuldigt meinen sicher wirren Programmierstil.
mfg Daniel Dieser Post wurde am 09.01.2014 um 16:00 Uhr von Daniel_P editiert. |