CPP. Question 10.4. Q: What's the best way to write a multi-statement macro?
A: The usual goal is to be able to invoke the macro as if it were an expression statement consisting of a function call: MACRO(arg1, arg2); Imperfect C++: Practical Solutions for Real-Life Programming.