Von Header aus, MFC ansprechen.

Der Fehler lautet:
Code:
Fehler	1	error C2653: 'Poker': Keine Klasse oder Namespace	
Fehler	2	error C2065: 'Form1': nichtdeklarierter Bezeichner	
Fehler	3	error C2065: 'aForm1': nichtdeklarierter Bezeichner

usw...
insgesamt 7 fehler, die bauen allerdings auf dem ersten auf. Diese Fehler erscheinen wenn ich deine Lösung anwende. Form1.h ist in der poker.cpp eingebudnen, alle anderen header in der Form1.h. Es ist viel mehr code als ich gepostet habe. Wie wärs wenn ich dir das projekt schicke?
 
Hi.

Ich hab's mir mal angeschaut.
und hat einer ne Idee? oder ist alles zu durcheinander?
Ja. Man weiß gar nicht wo man anfangen soll.

Grundsätzlich definiert man keine Funktionen in Headerdateien. Man trennt Deklaration und Definition ordentlich auf. Das ist im Grunde die Wurzel des Übels.

Es besteht offensichtlich eine zirkuläre Abhängigkeit zwischen Form1.h und karten.h. In Form1.h wird karten.h eingebunden und in karten.h willst du die Klasse aus Form1.h verwenden.

Warum bindest du die Datei karten.h überhaupt in Form1.h ein? Beim schnellen Drüberschauen hab ich nichts gesehen was du dort benutzen würdest.

Man benutzt in Headerdateien keine "using namespace . .." Anweisung.

Include-Guards verwendet man überlicherweise in den Headerdateien, nicht in den Dateien die diesen Header einbinden. Falls man #pragma once verwendet kann man ganz auf die Include-Guards Konstrukte verzichten.

Ich hab das Projekt mal etwas aufgeräumt, so das es kompiliert. Du solltest die Warnungen beachten! Ob das von der Aufteilung her alles sinnvoll ist habe ich nicht weiter geschaut. Kurz: es ist noch verbesserungsfähig.

Du solltest das Formular als Singleton implementieren, damit es im Programm nur eine Instanz gibt und du auf diese Instanz zugreifen kannst.

Gruß

PS: Bitte bereinige das Projekt das nächste Mal. Es bringt nichts deine Objektdateien und IntelliSense Datenbank (.ncb Datei) da drin zu belassen.
 

Anhänge

Zurück