Macro BOOST_VMD_IS_EMPTY
BOOST_VMD_IS_EMPTY — Tests whether its input is empty or not.
Synopsis
Description
Макро проверяет, пустой вход или нет. Он возвращает 1, если вход пуст, другой возвращает 0.
Макро — это вариадный макрос, принимающий любой вклад. Для компилятора VC++8 (VS2005) макрос берет один параметр ввода для проверки.
Макро не является совершенным и не может быть таковым. Проблема заключается в том, что вход для проверки является функциональным макро-имя, и в этом случае может возникнуть ошибка компилятора или ложный результат.
Этот макрос является заменой, используя вариадную макроподдержку, для недокументированного макроса. BOOST_PP_IS_EMPTY в библиотеке Boost PP Код взят из публикации Пола Менсонида вариадной версии для BOOST_PP_IS_EMPTY и изменен для поддержки VC++.
... = вариадный вход, для VC++8 это должен быть один параметр
Возврат = 1 если вход пуст, 0 если нет
Рекомендуется добавлять BOOST_PP_EMPTY() к любому тестируемому входу, чтобы избежать возможных предупреждающих сообщений от некоторых компиляторов о том, что никакие параметры не передаются на макрос, когда вход действительно пуст.