Methode wird nicht in eigener Klasse angenommen
-
Hi, ich hab folgendes Problem:
Ich hab die Klasse Game, diese Klasse soll alles managen was so erledigt werden muss wenn ein Spiel startet. In dieser Klasse hab ich eine Methode:
Ausschnitt aus der Game.h
public: void ProcessEvents ();jetzt möchte ich in der Game.cpp gerne diese Funktion aufrufen:
Ausszug aus Game.cpp
void Game::Run () { while (GameRun == true) { ProcessEvents(); ... } }Der Kompiler hat folgendes zu meckern^^
-> undefined reference to 'Game::ProcessEvents()'
Ich hab echt keine Idee woran das liegen kann. Ich benutze die Funktion ja in der eigenen Klasse

In einer anderen Klasse habe ich die eigene Funktion der Klasse auch in einer anderen Methode benutzt und alles hat super funktioniert...über seh ich hier vllt was?
-
Vielleicht solltest du die Funktion noch definieren?

-
Übrigens ist
while (GameRun == true)gleich wie
while(GameRun).
-
Ups....
Jetzt hab ich solange rummgesucht und alles kontrolliert...Header includes etc...und hab einfach die void Game::ProcessEvents() vergessen...
Habs wohl mit ProcessMoving verwechselt und deswegen gedacht ich hätte das shcon erledigt^^Naja zum Glück eine Einfache Lösung...Danke für den Tipp xD

-
EOutOfResources schrieb:
Übrigens ist
while (GameRun == true)gleich wie
while(GameRun).
Ja stimmt schon. Aber ich finds so irgendwie einfacher zu lesen. Oder ist das für andere Programmierer dann einfacher zu lesen? Sonst sollt ich das ab jetzt vllt. anders machen^^
-
3tiXoz schrieb:
Oder ist das für andere Programmierer dann einfacher zu lesen?
Überstztung nach Pseudocode:
while(GameRun == true) während SpielLäuft ist wahr while(GameRun) während SpielLäuftIch finde letzteres klarer.
-
EOutOfResources schrieb:
Ich finde letzteres klarer.
Ich fände es noch lesbarer wenn die Variable von der Bezeichnung her gut von Typen etc. zu unterscheiden wäre, bei mir beginnen bool-Variablen mit einem "is" oder vergleichbaren.
-
asc schrieb:
Ich fände es noch lesbarer wenn die Variable von der Bezeichnung her gut von Typen etc. zu unterscheiden wäre, bei mir beginnen bool-Variablen mit einem "is" oder vergleichbaren.
Ja ich mach auch eigentlich immer ein b vor die Bool Variablen...Aber manchmal vergess ich das wenn ich schnell drauflos tippe^^
-
asc schrieb:
die Variable von der Bezeichnung her gut von Typen etc. zu unterscheiden wäre
Ungarische Notation?
-
mh ungarische notation...
die ist recht verpönt, weil man klassen nicht gut damit kennzeichnen kann (zum beispiel)
-
EOutOfResources schrieb:
asc schrieb:
die Variable von der Bezeichnung her gut von Typen etc. zu unterscheiden wäre
Ungarische Notation?
Nein, eher unterscheide ich z.B. zwischen Typen und Variablen in der Groß- bzw. Kleinschreibung. Ebenso benenne ich Variablen so das ihr Sinn direkt ablesbar ist, bei boolischen Ausdrücken finde ich es lesbarer, wenn die Variable ähnlich einer Frage aufgebaut ist, die eindeutig mit ja oder nein beantwortet werden kann.
Beisielsweise "isActive", oder "isGameRunning".
Ungarische Notation widerum lehne ich grundsätzlich ab. Variablen benenne ich nach ihrer Bedeutung, nicht nach ihren Typ, nur bei boolwerten ist eine Frageform imho wesentlich lesbarer.
-
Aha, jetzt kapier ich's.