Io non riesco a capire ciò che questo significa macro:Qual è il significato di questa macro C++?
#define DECLARE_HANDLE(n) typedef struct n##__{int i;}*n
DECLARE_HANDLE(HWND);
ho imparato dal programma C che:
"##" significa collegare il parametro.
così la macro uguale:
typedef struct HWND__{int i;}*HWND
è questo diritto?
Se è giusto, qual è il significato di quella frase?
==================
codice da un gioco Bombermaaan (per Windows e Linux),
collegamento http://sourceforge.net/p/bombermaaan/code/HEAD/tree/trunk/src/Bombermaaan/winreplace.h,
linea No 90.
cosa significa? #define INVALID_SOCKET (SOCKET) (~ 0) – riqitang
'~' è l'operatore * logico not *, che in questo caso ripristinerà tutti i bit del numero in cui è stato inserito 0. 'char sock = INVALID_SOCKET;' will be 0xFF, 'int sock = INVALID_SOCKET' sarà 0xFFFFFFFF. – Gui13
grazie a @Sean per porre la domanda, una buona domanda. e grazie Xgbi per la tua risposta molto dettagliata. – puwei219