В ISO / IEC 14882: 2017 (C ++ 17) указано в разделе 5.7 «Комментарии»:
5.7 Комментарии [lex.comment]
1 Символы /*
начинают комментарий, который заканчивается символами */
. Эти комментарии не являются вложенными. Символы //
начинают комментарий, который заканчивается непосредственно перед следующим символом новой строки. Если в комментарии есть символ перевода страницы или символ вертикальной табуляции, между ним и новой строкой, заканчивающей комментарий, должны появляться только символы пробела; Диагностика c не требуется. [Примечание. Символы комментария //
, /*
и */
не имеют специального значения в комментарии //
и обрабатываются так же, как и другие символы. Точно так же символы комментария //
и /*
не имеют особого значения в комментарии /*
. - примечание к концу]
Почему символы перевода страницы и вертикальной табуляции по-разному обрабатываются внутри однострочный комментарий?
В чем причина этого?
И почему это не относится и к многострочным комментариям */
/*
?