I thought the syntax must be:
#define identifier replace
--------------------------------------------------------------------
And also what if there is no namespace 'eku' in the header, just enum and functions...?
I thought the syntax must be:
#define identifier replace
If you don't supply the value when #define-ing a symbol, then the pre-processor replaces that symbol with with blank text. However, that symbol is considered to be defined for the purposes of #if / #ifdef / #ifndef tests.
It looks as though the tutorial on this site neglects to mention that, but here's one that discusses it: