Комментарии
Комментарии служат своего рода документацией, находящейся прямо в коде. При вставке в программу они игнорируются компилятором; комментарии используются в качестве пометок, облегчающих чтение и понимание кода. Хотя специфичная документация не является частью стандарта C++, существуют утилиты, которые разбирают комментарии в документацию различных форматов (пример - Doxygen).
Содержание |
[править] Синтаксис
/* комментарий */
|
(1) | ||||||||
// комментарий
|
(2) | ||||||||
Все комментарии удаляются из программы на фазе трансляции 3 заменой каждого комментария одним пробельным символом.
[править] C-стиль
Комментарии в С-стиле обычно используются для комментирования больших блоков текста, однако, они могут использоваться для комментирования отдельных строк. Чтобы вставить комментарий в С-стиле, просто окружите текст символами /*
и */
; это приведёт к тому, что содержимое комментария будет проигнорировано компилятором. Хотя это и не часть стандарта С++, символы /**
и */
часто используются, чтобы обозначить блоки документации; это допустимо, потому что вторая звёздочка обрабатывается, как часть комментария. Комментарии в С-стиле не могут быть вложенными.
[править] C++-стиль
Комментарии в С++ стиле обычно используются для комментирования отдельных строк, однако, несколько комментариев в C++ стиле могут быть размещены совместно в форме многострочного комментария. Комментарии в C++ стиле говорят компилятору игнорировать всё содержимое между //
и новой строкой.
[править] Примечания
Поскольку комментарии удаляются до стадии препроцессора, макрос не может использоваться для формирования комментария и незавершённый комментарий в C-стиле не переходит из #include (включённого) файла.
Помимо самого комментирования, существуют и другие способы для исключения исходного кода
#if 0 std::cout << "Этот код не будет выполнен или даже скомпилирован\n"; #endif
и
if(false) { std::cout << "Этот код не будет выполнен\n" }
[править] Пример
/* Комментарии в С-стиле могут содержать несколько строк */ /* или всего одну */ /************** * вы можете вставить любое количество символов *, но * вы не можете создать вложенный комментарий */ // Комментарии в С++-стиле могут комментировать одну строку // или они могут // быть связанными друг с другом #include <iostream> int main() { // комментарии удаляются перед препроцессингом, // поэтому ABC равно "1", а не "1//2134", поэтому будет выведено // "1 привет мир" #define ABC 1//2134 std::cout << ABC << " привет мир\n"; // Код ниже не будет выполнен // return 1; // Код ниже будет выполнен return 0; }
Вывод:
1 привет мир
[править] Смотрите также
Документация C по комментарии
|