이름공간
변수
행위

주석

cppreference.com
< cpp
 
 
C++ language
General topics
Flow control
Conditional execution statements
Iteration statements
Jump statements
Functions
function declaration
lambda function declaration
function template
inline specifier
exception specifications (deprecated)
noexcept specifier (C++11)
Exceptions
Namespaces
Types
decltype specifier (C++11)
Specifiers
cv specifiers
storage duration specifiers
constexpr specifier (C++11)
auto specifier (C++11)
alignas specifier (C++11)
Initialization
Literals
Expressions
alternative representations
Utilities
Types
typedef declaration
type alias declaration (C++11)
attributes (C++11)
Casts
implicit conversions
const_cast conversion
static_cast conversion
dynamic_cast conversion
reinterpret_cast conversion
C-style and functional cast
Memory allocation
Classes
Class-specific function properties
Special member functions
Templates
class template
function template
template specialization
parameter packs (C++11)
Miscellaneous
Inline assembly
 

주석은 코드 내부에서 일종의 문서 역할을 합니다. 프로그램에 삽입되더라도 컴파일러가 알아서 무시해 줍니다. 사람이 소스코드를 읽을 때 도움을 주기 위한 용도로만 사용됩니다. 또한 특정 문서는 C++ 표준의 일부가 아닙니다. 몇몇 도구들은 주석을 다른 문서 서식으로 파싱하기도 합니다.

목차

[편집] 문법

틀:sdcl list sep
/* comment */ (1)
// comment\n (2)

1) "C 스타일" 또는 "멀티라인" 주석.

2) "C++ 스타일" 또는 "싱글라인" 주석.

[편집] C스타일

C 스타일 주석은 일반적으로 큰 블럭의 텍스트를 주석으로 사용합니다. 하지만 한줄로 사용할 수도 있습니다. C 스타일 주석을 넣으려면 간단하게 텍스트를 /**/로 감싸주면 됩니다. 이렇게 함으로서 주석이 컴파일러에게 무시될 수 있도록 합니다. 비록 C++의 표준은 아니지만 /***/는 종조종 문서 블럭을 나타내기도 합니다. 이러한 표현이 틀린것은 아닙니다. 왜냐하면 두번째 별표가 이미 주석에 포함되어 있기 때문입니다. C스타일 주석은 중첩될 수 없습니다.

C스타일 주석은 C와 C++ 코드가 섞여 있는 환경에서 자주 나타납니다. 그럴수 밖에 없는 것이 C 표준(C99 이전)에 명시된 주석은 이러한 형태 뿐이기 때문입니다.

[편집] C++스타일

C++스타일 주석은 일반적으로 한줄 단위의 주석에 사용됩니다. 하지만 여러 줄의 코드를 주석처리 하기 위해서 C스타일 주석의 형태를 사용할 수도 있습니다. C++ 스타일 주석은 컴파일러에게 //부터 줄바꿈 까지를 무시하도록 알려줍니다.

[편집] 예제

/* C스타일 주석은
여러줄을 포함합니다 */
/* 혹은 한줄도 가능합니다. */
 
// C++스타일 주석은 한줄을 주석처리할 수 있습니다.
 
// 혹은 그것들을
// 함께 이어가면 됩니다.
 
int main()
{
  // 아래의 코드는 실행되지 않습니다.
  // return 1;
 
  // 아래의 코드는 실행될 것입니다.
  return 0;
}