112 __ _____ _________________Часть II. Программирование на C++

можете описать один или несколько блоков (циклы, условные или составные операторы) коротким комментарием. Некоторые разработчики располагают свои комментарии в начальных строках блока:

while (*string && *string != ')') // Цикл продолжается пока не

// найдена закрывающая скобка или // не достигнут конец строки.

{

}

а другие предпочитают предварять код комментарием:

// Цикл продолжается пока не найдена закрывающая скобка или не // достигнут конец строки.

while (*string && *string != ')') {

*result++ = *string++;

}

У второго метода есть ряд преимуществ. Во-первых, если вам нужно скопировать фрагмент текста, то вы можете копировать только код (опустив предшествующий комментарий), а можете копировать и то и другое. В противном случае вы вынуждены всегда копировать комментарии и потом при необходимости их удалять или изменять. Во-вторых, расположение комментария перед блоком кода существенно удлиняет строки по сравнению с расположением в конце строки. Когда вы пишете комментарии в конце строки кода, они нередко стремятся вылезти за пределы экрана. Возможно, эту неприятность легко можно скомпенсировать настройкой вашего текстового редактора, однако потенциальные читатели вашего текста могут и не иметь такой возможности.

Как правило, отдельные строки кода не нуждаются в комментариях. Исключением из этого правила являются строки, назначение которых неясно из контекста, например:

// Пропускаем открывающую скобку — она не входит в результат. р = ++string;

Вопрос, что стоит комментировать, а что нет, довольно заковырист; он приводит нас к следующей теме.

Сопровождение ваших комментариев

Как вы уже поняли, комментарии незаменимы для улучшения читабельности исходного кода. Однако, как это обычно бывает, избыток хорошего не-зедко приводит к нежелательным результатам. Представьте себе программи-:та, комментирующего практически каждую написанную им строчку. Для