шаблон do while (false) [duplicate]

Возможный дубликат:
Почему иногда в макросах C / C ++ используются бессмысленные операторы do / while и if / else?

Почему do while (false) необходимо в макросах ниже?

#define LOG(message, ...) \
do { \
Lock lock (logMutex); \

 .... a lot of code ...
} while (false)

Я не думаю, что это служит какой-либо функциональной цели. Я что-то упускаю?

26
задан Community 23 May 2017 в 12:25
поделиться