112 __ _____ _________________Часть II. Программирование на C++
можете описать один или несколько блоков (циклы, условные или составные операторы) коротким комментарием. Некоторые разработчики располагают свои комментарии в начальных строках блока:
while (*string && *string != ')') // Цикл продолжается пока не
// найдена закрывающая скобка или // не достигнут конец строки.
{
}
а другие предпочитают предварять код комментарием:
// Цикл продолжается пока не найдена закрывающая скобка или не // достигнут конец строки.
while (*string && *string != ')') {
*result++ = *string++;
}
У второго метода есть ряд преимуществ. Во-первых, если вам нужно скопировать фрагмент текста, то вы можете копировать только код (опустив предшествующий комментарий), а можете копировать и то и другое. В противном случае вы вынуждены всегда копировать комментарии и потом при необходимости их удалять или изменять. Во-вторых, расположение комментария перед блоком кода существенно удлиняет строки по сравнению с расположением в конце строки. Когда вы пишете комментарии в конце строки кода, они нередко стремятся вылезти за пределы экрана. Возможно, эту неприятность легко можно скомпенсировать настройкой вашего текстового редактора, однако потенциальные читатели вашего текста могут и не иметь такой возможности.
Как правило, отдельные строки кода не нуждаются в комментариях. Исключением из этого правила являются строки, назначение которых неясно из контекста, например:
// Пропускаем открывающую скобку — она не входит в результат. р = ++string;
Вопрос, что стоит комментировать, а что нет, довольно заковырист; он приводит нас к следующей теме.
Сопровождение ваших комментариев
Как вы уже поняли, комментарии незаменимы для улучшения читабельности исходного кода. Однако, как это обычно бывает, избыток хорошего не-зедко приводит к нежелательным результатам. Представьте себе программи-:та, комментирующего практически каждую написанную им строчку. Для