VMD имеет несколько объектоподобных макросов, которые конечный пользователь библиотеки может использовать для определения или изменения способа использования вариадных макросов в библиотеке.
BOOST_PP_VARIADICS является частью библиотеки Boost PP, а не VMD. Он используется для обозначения того, существует ли поддержка вариадных данных для конкретного компилятора, который использует конечный пользователь. VMD также использует этот макрос, чтобы определить, существует ли поддержка вариадных данных. Конечный пользователь VMD может использовать этот макрос в своем собственном дизайне, чтобы определить, поддерживаются ли вариадные макросы. Кроме того, конечный пользователь VMD может установить этот макрос на 0 или ненулевой уровень, прежде чем включать файл заголовка VMD, чтобы заставить VMD рассматривать конкретный компилятор, используемый как не поддерживающий или поддерживающий вариативные макросы. Если компилятор не поддерживает вариадный макрос, ни один из макросов в VMD не определен.
Макрософт BOOST_VMD_ASSERT_DATA контролирует, будет ли макросообщение проверять свои данные. По умолчанию в режиме отладки компилятора он будет проверять данные, в то время как в режиме выпуска компилятора он не будет проверять свои данные. Конечный пользователь может изменить это, установив макрос 0, чтобы не проверять данные, или ненулевой, чтобы проверить данные, прежде чем включать файл заголовка VMD, или проверить значение, если это необходимо, после включения файла заголовка VMD.