Day 15.
Как вы могли заметить в макросах из предыдущих дней, иногда мы для удобства разделяем их на строки с помощью
\ (backslash). Когда компилятор видит
\ + \n (new line character), он их просто удаляет. Так вы превращаете несколько physical source lines в одну logical source line.Что важно, этап склеивания строк идёт до этапа удаления комментариев, так что можно легко напороться на проблему в таком случае:
int x = 1;
// some logic here \
++x;
std::cout << x;
Вы получите
int x = 1;
// some logic here ++x;
std::cout << x; // 1
Хорошая IDE подсветит, но если у вас есть друг, который типа крутой кодит в блокноте, пранканите его как-нибудь. Воткните в конце комментария с отступом в 200 пробелов вправо
\. Пусть дебагает.@thisnotes. Patreon, Boosty.
Спасибо Artyom Garkavy и niki4smirn.