#define NAME(x) TEXT(x)
#define TEXT(quote) __TEXT(quote) // r_winnt
#define __TEXT(quote) quote // r_winnt
The above is from winNT.h, isn't NAME("Virtual Cam")
the same as "Virtual Cam"
,what's the point to use this macro?
#define NAME(x) TEXT(x)
#define TEXT(quote) __TEXT(quote) // r_winnt
#define __TEXT(quote) quote // r_winnt
The above is from winNT.h, isn't NAME("Virtual Cam")
the same as "Virtual Cam"
,what's the point to use this macro?
Depends on if your system is #defined to use Unicode. Then it will automatically change the literal for you to be a wide literal instead of a char literal.
__TEXT
macro expansion is selected based on whether UNICODE
flag is defined or not. If not it just expands to quote
else it will append L
to the quote so that it becomes L"Virtual Cam"
. This string is interpreted as a wide char string.