원문 : C++ Modifier Types
주의 : 번역이 개판이므로 원문을 참조하세요.
주의 : 허락받고 번역한 것이 아니기 때문에 언제든 내려갈 수 있습니다.
주의 : 가독성을 높이기 위해 잘 알려진 용어나 발음이 비슷한 용어는 한글 표기합니다.
C++ Modifier Types
C++ 은 char, int, double data type 앞에 modifier 를 가질 수 있도록 허용한다. Modifier 는 base type 의 의미를 수정하는데 사용되며, 그래서 다양한 상황에 대한 요구를 더 정확하게 만족시킨다.
그 data type modifier 의 리스트는 아래와 같다 :
- signed
- unsigned
- long
- short
signed, unsigned, long, short 는 integer base type 들에 적용될 수 있다. 부가적으로 signed 와 unsigned 는 char 에 적용될 수 있으며, long 은 double 에 적용될 수 있다.
signed 와 unsigned 는 long 이나 short 앞에 사용될 수도 있다. 예를 들면 unsigned long int 이다.
C++ 은 unsigned, short, long 의 integer 를 선언하기 위한 단축 표기를 허용한다. 당신은 int 없이 단순히 unsigned, short, long 만을 사용할 수 있다. int 는 내포되어 있다. 예를 들어 다음의 두 문장은 둘 다 unsigned integer 변수를 선언한다.
signed 와 unsigned 가 C++ 에 의해 해석되는 방식의 차이를 이해하기 위해서는, 다음과 같은 짧은 프로그램을 실행해 보면 된다 :
프로그램이 실행되면, 출력은 다음과 같다.
-15536 50000
위의 결과는 50,000 을 short integer 로서 표현하는 bit 패턴이 short 에 의해 -15,536 으로 해석되기 때문이다.
Type Qualifier in C++
Type qualifier 는 변수 앞에서 부가적인 정보를 제공한다.
Qualifier | Meaning |
const | const type 의 개체는 프로그램 실행 동안에 변경될 수 없다. |
volatile | volatile 은 컴파일러에게 변수의 값이 프로그램에 의해서 명시적으로 지정되지 않은 방식으로 변경될 수 있음을 통보한다. |
restrict | restrict 에 의한 pointer qualifier 는 초기에 단지 그것이 가리키는 개체에 의해서만 접근 가능하다는 것을 의미한다. C99 에서만 restrict 라 불리는 새로운 유형의 qualifiler 가 추가되었다. |
volatile 과 restrict 는 정말 잘 안 쓰이는 keyword 이다. 자세한 내용은 다음 링크들을 참조하기 바란다.
[ C/C++ ] volatile 선언의 의미에 대한 정리.
'Programming > C++' 카테고리의 다른 글
[ 번역 ] Universal CRT 소개 (0) | 2015.12.28 |
---|---|
[ 번역 ] Function Call Operator () (0) | 2012.12.24 |
[ 번역 ] explicit( C++ ) (0) | 2012.12.24 |
[ 번역 ] Template Specialization and Partial Template Specialization (0) | 2012.11.02 |
[ 번역 ] C++ Metadata - Part 1, Singletons and Lookup (0) | 2012.10.31 |