Что значит иметь блок кода С++ с обратной косой чертой после каждой точки с запятой?

Недавно я видел блоки кода С++, где после каждой точки с запятой есть "\". Мне кажется очень странным. Возможно, это не что иное, как ошибка или остатки некоторых давно забытых комментариев (хотя у них есть косая черта "/" ). Какое влияние это "\" на код?

Она является образцом кода.

#define PE_DECLARE_CLASS(class_) \
typedef class_ MyClass; \
static void setSuperClasses(); \

Ответ 1

Обратная косая черта как последний символ в строке заставляет эту линию соединяться со следующей для предварительной обработки. Для регулярного синтаксического анализа синтаксиса строки новой строки являются просто пробелами, поэтому это не имеет значения. Но директивы препроцессора, в частности, макроопределения заканчиваются в конце строки.

Использование обратной косой черты для продолжения строки позволяет форматировать длинные тела макросов по нескольким исходным текстовым строкам.