Главная » C++ » Затмение: комментируйте весь код, не прерывая его другим комментарием
Затмение: комментируйте весь код, не прерывая его другим комментарием
Скажем, у меня есть следующий код (на C ++, но это, вероятно, не важно для вопроса):
int main() {
....random code....
/*This is a comment*/
....random code....
return 0;
}
В Eclipse, когда я хочу закомментировать весь код, поставив / * и * / до и после кода, комментарий обрезается на * / в конце строки «Это комментарий» в строке 3, поэтому остальная часть кода оставлена без комментариев.
/* //<--overall comment starts here
int main() {
....random code....
/*This is a comment*/ //<--overall comment ends here
....random code....
return 0;
}
*/ //<--overall comment SHOULD end here
Кто-нибудь знает способ обойти эту проблему, или мне просто нужно разобраться с этим или использовать // комментарии …?
Нет способа иметь вложенные комментарии в C ++. Одно решение (особенно если вы не хотите менять много /* */ в //) использовать препроцессор, вы можете сделать что-то вроде
#ifdef SOME_RANDOM_SYMBOL
code that you want to comment here
#endif
Просто убедитесь, что SOME_RANDOM_SYMBOL как-то не определено в вашем коде.
Как упомянуто @Caleb в комментарии, вы также можете сделать
#if 0
code that you want to comment here
#endif
но использование символа позволяет вам искать его.
Скажем, у меня есть следующий код (на C ++, но это, вероятно, не важно для вопроса):
В Eclipse, когда я хочу закомментировать весь код, поставив / * и * / до и после кода, комментарий обрезается на * / в конце строки «Это комментарий» в строке 3, поэтому остальная часть кода оставлена без комментариев.
Кто-нибудь знает способ обойти эту проблему, или мне просто нужно разобраться с этим или использовать // комментарии …?
Решение
Нет способа иметь вложенные комментарии в C ++. Одно решение (особенно если вы не хотите менять много
/* */
в//
) использовать препроцессор, вы можете сделать что-то вродеПросто убедитесь, что
SOME_RANDOM_SYMBOL
как-то не определено в вашем коде.Как упомянуто @Caleb в комментарии, вы также можете сделать
но использование символа позволяет вам искать его.
Другие решения
Других решений пока нет …