macro für MsgBox wie ist der Syntax?
-
Hallo
Ich hatte neulich irgendwo in den Tiefen des Internets ein Macro gefunden mit dem man eine MB_OK-Messagebox schnell und einfach erzeugen kann. Leider finde ich die Seite nicht mehr.
Ich will also einfach nur...
MsgBox("mein text");... schreiben und dabei soll...
MessageBoxA(0, "mein text", "", MB_OK);... aufgerufen werden.
bisher habe ich es so probiert, was leider nicht funktioniert:
#define MsgBox(char *text) MessageBoxA(0, text, "", MB_OK);
-
entweder du schreibst eine kleine funktion, oder ein macro mischen kannst du das nicht.
Zu bevorzugen wäre ganz klar eine funktion.als Makro
#define MsgBox(text) MessageBoxA(0, text, "", MB_OK)als funktion:
int MsgBox(const char* text) { return MessageBox(0,text, "", MB_OK); }
-
Ich würde einen Makro vermeiden und eine inline Funktion bauen.
-
Und ich würde mir mal angucken, wie die Syntax vn Makros so ausschaut...
aber mein Preposter hat Recht...Makros würd ich nur zum schnellen debuggen verwenden...Aber damit was sinnvolles kommt:
#define MsgBox(x) MessageBox(NULL,x,"Titel",MB_OK)Sollte so gehen...
EDIT: Sorry, hab mir die 1. Antwort nicht durchgelesen...
-
Danke für die Hilfe. Was spricht eigentlich gegen die Verwemdung des Makros bzw. für die Funktion? Ich finde das Makro echt praktisch.
-
MsgBox(5); <- fehler
makros sind nicht typsicher. im falle von MessageBoxA ist das nicht sooo
tragisch aber generell sollte man sie vermeiden. inline funktionen können
genausogut optimiert werden, deshalb sollte man sie vorziehen