Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » #include für weiter und zurück

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
08.01.2005, 11:42 Uhr
~Mikka
Gast


Hallo Welt,

ich glaub ich hab in der Berufsschule nicht richtig aufgepasst: Ich hab ein Fenster, von dem aus eine Form geöffnet wird. In der Form hab ich einen Weiter und einen Zurück Button.

Die Forms werden über einen Zeiger auf das Fenster und ein ->Show() aufgerufen. Nennen wir sie Form1, Blatt1 und Blatt2. In Form1 hab ich die #include "Blatt1.h" von Blatt1 und in Blatt1 von Blatt2. Vorwärts funktioniert das prächtig. Allerdings wenn ich von Blatt2 auf Blatt1 zurück möchte, dann kennt Blatt2 logischerweise Blatt1 nicht. Klar.

Wenn ich nun den Header von Blatt1 in Blatt2 includiere, dann kennt Form1 auch Blatt1 nicht mehr. Tataa, altbekanntes Problem, aber wie war die Lösung? Das Problem ist ja, dass ich Blatt1 somit öfter deklariere.

Code sieht in etwa so aus:
Zitat:
Form1:

C++:
#include "Blatt1.h"
Button_Click
{
Blatt1 *Next1 = new Blatt1();
Next1->Show();
}



Blatt1:

C++:
#include "Blatt2.h"
Button_Click
{
Blatt2 *Next2 = new Blatt2();
Next2->Show();
Close();
}



Blatt2:

C++:
#include "Blatt1.h"
Button_Click
{
Blatt1 *Back = new Blatt1();
Back->Show();
}



So wäre die Logik, dass es funktionieren sollte. Aber durch das mehrfache #include von Blatt1.h gibt es das Problem, dass Form1 Blatt1 nicht mehr kennt.

Wie macht man Blatt2 mit Blatt1 bekannt?

Dieser Post wurde am 08.01.2005 um 14:08 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
08.01.2005, 14:12 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

ich glaub ich hab in der Berufsschule nicht richtig aufgepasst


das petze ich deinem lehrer

verwende zunächst mal includeguards...
sollte man sich sowieso zur angewohnheit bei jedem header den man schreibt machen

C++:
#ifndef Tralala_HeaderName4711  //man bin ich heute wieder kreativ, musst dir natürlich für jeden header was eindeutiges ausdenken, ich nehm immer HEADERNAME_H
#define Tralala_HeaderName4711
//hier packst du dann jeweils deinen header rein...

#endif


--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 08.01.2005 um 14:12 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: