Nice article Eduard.
Re: last comment. Not sure how having to change the implementation of a Macro is any less of a pain than having to change hundreds of class method arguments. If anything Macro's are a great way to abstract application wide changes with a single line of code. Granted recompilation is required, but code that can't withstand recompilation all day long has a deeper problem.
My only negative about Macro's is when you can't read the code for Macro soup, less is more for me.
One tip to add. I like to have auto complete work for Macros. If you precede each macro with a triple comment, then they will appear in the auto complete suggestions...
///
#define LogNone(%message) $$$LogEvent("NONE", %message)
///
#define LogError(%message) $$$LogEvent("ERROR", %message)
///
#define LogFatal(%message) $$$LogEvent("FATAL", %message)- Log in to post comments