Multithreads in ANSI C++ / Grafische Umgebungen unter win
-
Hi,
Ich habe mit ca 15 Jahren aus Interesse angefangen C++ zu lernen. Habe zwei Bücher gelesen und werde demnächst 18. Ich lerne C++ (leider) nicht in der Schule, habe mir also alles selbst beigebracht....
Hmm...ich komme mir fast dumm vor diese Frage zu stellen aber könnte mir jemand erklären wie genau Multithreads funktionieren. Ich kann mir nämlich nicht wirklich vorstellen wie man das schreiben sollte....laufen die Funktionen dann parallel? Welche Dateien muss ich includen? Welche Funktionen aufrufen?Und dann nochmal ein paar Fragen zu win:
Warum heisst das bei win32 Anwendungen WinMain und nicht main? Ist doch das Gleiche oder? Oder warum schreibt man BOOL statt bool? Das erscheint mir genauso sinnlos wie NULL statt 0 zu schreiben....als wenn man 0 umdefinieren müsste!
Und wieder die gleichen Fragen: Welche Dateien brauche ich? Und was für Objekte muss ich erzeugen?Ich benutze das Microsoft Visual C++ 6.0 Studio.
Ich hoffe, dass mir jemand helfen kann
mfg Konfuzius86
-
Konfuzius86 schrieb:
Ich habe mit ca 15 Jahren aus Interesse angefangen C++ zu lernen. Habe zwei Bücher gelesen und werde demnächst 18.
Herzlichen Glückwunsch
Konfuzius86 schrieb:
Ich lerne C++ (leider) nicht in der Schule, habe mir also alles selbst beigebracht....
Wer lernt das da schon ? Und wenn wirds wohl C mit OOP sein...
Konfuzius86 schrieb:
Hmm...ich komme mir fast dumm vor diese Frage zu stellen aber könnte mir jemand erklären wie genau Multithreads funktionieren. Ich kann mir nämlich nicht wirklich vorstellen wie man das schreiben sollte....laufen die Funktionen dann parallel? Welche Dateien muss ich includen? Welche Funktionen aufrufen?
Keine Ahnung, evtl schaust du mal bei boost...
Konfuzius86 schrieb:
Und dann nochmal ein paar Fragen zu win:
Warum heisst das bei win32 Anwendungen WinMain und nicht main? Ist doch das Gleiche oder? Oder warum schreibt man BOOL statt bool? Das erscheint mir genauso sinnlos wie NULL statt 0 zu schreiben....als wenn man 0 umdefinieren müsste!
Und wieder die gleichen Fragen: Welche Dateien brauche ich? Und was für Objekte muss ich erzeugen?Das mit WinMain ist wohl von MS irgendwann mal erfunden worden, ist eigentlich
nur ein anderer Name. BOOL ist auch so ein Windowstype, glaub ich 4 byte gross,
bool ist imho 1 byte groß, such evtl. mal nach bitvectoren.
NULL ist nicht 0, wenn NULL im Quelltext steht hat es ne Bedeutung, die
anders ist(bzw. sein kann) als 0.mfg.
Devil
-
devil81 schrieb:
NULL ist nicht 0, wenn NULL im Quelltext steht hat es ne Bedeutung, die
anders ist(bzw. sein kann) als 0.also laut standard:
#define NULL 0und wer NULL verwendet ist lame :p
BOOL ist ein typedef auf int
für boolsche Werte sollte man deshalb bool nehmen, denn die ganzen WinAPI typen sind im prinzip mies.
-
Shade Of Mine schrieb:
devil81 schrieb:
NULL ist nicht 0, wenn NULL im Quelltext steht hat es ne Bedeutung, die
anders ist(bzw. sein kann) als 0.also laut standard:
#define NULL 0und wer NULL verwendet ist lame :p
Das ist Haarspalterrei :p
Devil
-
Knuddlbaer=NULL
:-p
-
Hi,
früher war NULL nicht als 0 definiert, sondern AFAIK als (void*)0, d.h. NULL wurde dann vorwiegend verwendet, wenn man zeigen wollte, dass es sich hier um einen Nullzeiger handelt.
Das kann man natürlich auch heute noch so machen, aber inzwischen ist es nur noch als Hilfe für den Programmierer, denn NULL = 0.
ChrisM
-
NULL hat allerdings die Chance auf ein großes Comeback (und ich wünsche ihm viel Glück dabei):
http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/papers/2003/n1488.pdf
BOOL stammt wohl noch aus Zeiten, in denen C kein bool hatte. Das ist auch noch nicht lange her...
-
Erstmal danke....
Aber ich weiss trotzdem noch nicht welche dateien ich brauche....
Hat jemand nen Link oder irgendwas anderes, möglichst auf deutsch.