01.06 - 키워드와 식별자 (keywords and naming identifiers)
키워드(Keyword)
C++은 자체 사용을 위해 C++ 17 기준으로 84개 단어를 예약해놨다. 이러한 단어를 키워드(keyword)라고 하며, 키워드 각각은 C++ 언어 내에서 특별한 의미가 있다.
alignas ** |
char |
do |
goto |
operator |
static |
typeid * |
alignof ** |
char16_t ** |
double |
if |
or |
static_assert ** |
typename * |
and |
char32_t ** |
dynamic_cast * |
inline |
or_eq |
static_cast * |
union |
and_eq |
class |
else |
int |
private |
struct |
unsigned |
asm |
compl |
enum |
long |
protected |
switch |
using * |
auto |
const |
explicit * |
mutable * |
public |
template |
virtual |
bitand |
constexpr ** |
export * |
namespace * |
register |
this |
void |
bitor |
const_cast * |
extern |
new |
reinterpret_cast * |
thread_local ** |
volatile |
bool * |
continue |
false * |
noexcept ** |
return |
throw |
wchar_t * |
break |
decltype ** |
float |
not |
shrot |
true * |
while |
case |
default |
for |
not_eq |
signed |
try |
xor |
catch |
delete |
friend |
nullptr ** |
sizeof |
typedef |
xor_eq |
* 키워드는 C++ 94에서 추가되었다.
** 키워드는 C++ 11에서 추가되었다.
C++ 11에서는 override와 final이라는 두 가지 특수 식별자(special identifiers)가 추가되었다. 이 두 가지는 특정 상황에서 사용될 때 특별한 의미를 지닌다.
지금까지 포스트에서 int, void 및 return 등 키워드 중 일부를 사용했다. 이러한 키워드와 특수 식별자는 특별한 의미를 지니기 때문에 대부분 IDE에서는 이 단어의 텍스트 색을 다른 색으로 변경하여 강조한다.
식별자(Identifier)
C++ 에서 변수(variable), 함수(function), 타입(type) 또는 다른 종류의 객체(other kind of object)의 이름을 식별자(identifier)라고 한다. C++에는 식별자의 이름을 지정할 때 따라야 하는 규칙이 몇 가지 있다.
- 키워드는 예약되어 있으므로 키워드는 식별자가 될 수 없다.
- 식별자는 대소문자, 숫자 및 문자로만 구성될 수 있다. (이름에 를 제외한 특수 기호나 공백을 포함할 수 없다.)
- 식별자는 대소문자 또는 _ 문자로만 시작해야 한다. (숫자로 시작할 수 없다.)
- C++ 은 대문자와 소문자를 구별한다. (lowercase와 lowerCase가 다르고 LowerCase와도 다르다.)
번역: 이 포스트의 원문은 http://www.learncpp.com/cpp-tutorial/14c-keywords-and-naming-identifiers/ 입니다.