Hallo liebe "Lerngemeinschaft"
ich bin grade bei dem schönen Thema Klassen angekommen und bearbeite dazu grade die Aufgabe 3 mit dem Thema Private Membervariablen.
den Quelltext 1 zu 1 abschreiben im Buch kann ich und es funktioniert auch alles. Aber abschreiben kann ja jeder also will ich was eigenes machen und habe Versucht den Quellcode in unterschiedlichen Dateien zu packen. erstmal die 3 Dateien jetzt:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
//Kapitel_7_3.cpp
//C++ Programmierung
// Kapitel 7 Aufgabe 3
// <Private Member>
#include <iostream>
#include "Reiter.hpp"
using namespace std;
int main ()
{
// Variablen
CReiter Spieler; //Ein Reiter für jeden Spieler
//Neue Koordinaten setzen
Spieler.SetzePosition (150, 300);
Spieler.SetzePosition (180, 620);
return 0;
}
|
Teil2
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
//Reiter.hpp
// C++ Kapitel 7 Aufgabe3
// die Klassen werden in einer seperaten Header Datei erstellt
// Klassen erstellen
class CReiter
{
private:
//Membervariablen
int m_XPosition; //x-Position auf den Bildschirm
int m_YPosition; //y-Position auf dem Bildschirm
//Memberfunktion
public:
void SetzePosition (const int X, const int Y);
};
|
und Teil 3
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
//Reiter.cpp
// C++ Programmierung
// KApitel 7 Aufgabe 3
// Klassen in separater Datei
#include "Reiter.hpp"
#include <iostream>
using namespace std;
//Konstanten festlegen
const int Bildschirmbreite = 800;
const int Bildschirmhöhe = 600;
// Funktion Zeige Daten
// Aufgabe: Die Werte der Reiter ausgeben
void CReiter::SetzePosition (const int X, const int Y)
{
//Prüfen ob die Koordinaten Richtig sind
if (X > 0 && X < Bildschirmbreite && Y > 0 && Y < Bildschirmhöhe)
{
// Wenn die Koordinaten passen
m_XPosition = X;
m_YPosition = Y;
cout << "Neue Koordinaten gesetzt!" << endl;
}
else
{
//Sind die Koordinaten außerhalb des Bildes, gibt es eine Fehlermeldung
cout << "Fehler: Koordinaten ausserhalb des Bereichs!" << endl;
}
cout << endl;
} // SetzeKoordinaten
|
Sieht für mich alles gut aus, aber ich bekomme folgende Fehlermeldung:
\kapitel_7_3.cpp( 1 8 ) :error C2039: 'SetzePosition': Ist kein Element von 'CReiter'
\kapitel_7_3\reiter.hpp( 8 ) : Siehe Deklaration von 'CReiter'
\kapitel_7_3.cpp( 1 9): error C2039: 'SetzePosition': Ist kein Element von 'CReiter'
\kapitel_7_3\reiter.hpp( 8 ) : Siehe Deklaration von 'CReiter'
wo habe ich den Fehler? ich finde nix
hoffe mir kann jemand helfen.