Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Bedingte includes

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
29.11.2005, 12:28 Uhr
Hans
Library Walker
(Operator)


Hi,
wenn man für das Betriebssystem OS/2 ein Programm schreibt, das die WPS (WorkPlace Shell = GUI von OS/2) nutzt, muss man am Anfang per #define festlegen, welche Eigenschaften das Programm haben soll, bevor man die wichtigste Header-Datei, nämlich <os2.h> einbindet. Also:
C++:
#define X
#define Y
#include <os2.h>


Abhängig davon, was man so über #define festgelegt hat, werden weitere Header-Dateien eingebunden, oder auch weg gelassen. Gibt es einen solchen Mechanismuss auch bei Windows, so das man schreiben kann:
C++:
#define X
#define Y
#include <windows.h>



Oder hat M$ diese Möglichkeit nach dem Bruch mit IBM in Sachen OS/2 womöglich aus dem Win-API entfernt?

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
29.11.2005, 13:04 Uhr
Taelan



#ifdef Y
bla
#endif

dann gibts natürlich noch #elseif , #else usw

such mal in nem C/C++ Tutorial nach Precompiler Befehlen oder so ähnlich

Dieser Post wurde am 29.11.2005 um 13:05 Uhr von Taelan editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
29.11.2005, 13:33 Uhr
Tommix



Hallo,
es gibt schon ein paar Sachen wie WIN32_LEAN_AND_MEAN aber wenn man nur bestimmte Header einbinden will, sollte man IMHO genau das tun.

C++:
#define BINDE_FILE_1_EIN
#define BINDE_FILE_2_EIN
#include <UniversalSuperHeader.h>


oder

C++:
#include <file_1.h>
#include <file_2.h>


... da sehe ich keinen großen Hub bei der ersten Variante.

Gruß, Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
29.11.2005, 15:31 Uhr
Hans
Library Walker
(Operator)


Hi,

ich bin mir jetzt nicht sicher, ob ich mich nicht klar genug ausgedrückt habe...
Also unter OS/2 ist es so, das man im Quelltext als erstes ein oder zwei #defines setzen muss, bevor man die os2.h einbindet. Innerhalb der os2.h stehen dann mehrere #ifdef-abfragen, anhand derer der Präprozessor entscheidet, was sonst noch eingebunden wird, oder eben nicht. Und ich wollte jetzt wissen, ob sowas bei Windoof auch existiert.

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
29.11.2005, 15:57 Uhr
Tommix



Ich behaupte jetzt mal man muß nicht. Man übergibt zwar z.B. im VC dem Compiler per default ein paar #defines über die Kommandozeile (nicht im Quelltext) aber es scheint eigentlich mmer Standardwerte zu geben. Jedenfalls schreibe ich, wenn ich meinetwegen in einer Konsolenanwendung eine MessageBox will oder so, außer dem #include nichts weiter rein.

Gruß, Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


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: