Scoped enum
: C++98에서 사용되던 기존의 enum과 달리 그것의 이름을 타입으로 가지고 scope 가 정해진 enumerator 이다.
먼저 c++98에서 사용하던 enum 을 살펴보자.
C++11에서 제공하는 scoped enum 을 살펴보자.
scope enum 은 해당 scope 를 통해서만 접근이 가능하고 암시적인 형변환이 불가능하다.
따라서 해당 enum 값에 접근할 때 scope 를 통해서 접근하고,
형변환을 원한다면 statis_cast를 사용할 수도 있다.
피드 구독하기:
댓글 (Atom)
[C++] meta programing
재귀 호출에 관해 template meta programming 을 적용한 예제를 살펴보자. #include using namespace std; int fact(int n){ if(n factorial 연산을 하는 일반적인 재귀 호출 함...
-
Smart Pointer : 포인터처럼 동작하며 자동으로 메모리를 해제하고 안전하게 resource를 관리하도록 돕는 객체 포인터는 소멸자가 호출되지 않아 memory leak이 발생한다. Java, C#같은 VM이 있는 언어는 VM에서 G...
-
Template specialization : class template 을 arguments에 따라서 customizing 하는 기법 먼저 위 예제의 첫 번째 template 선언처럼 일반적인 template 선언은 primary temp...
-
Override : 함수를 Override 할 때 정확한 signature 에 맞춰 override 되는지 컴파일 타임에 확인되도록 하는 키워드 위 예제에서 발생하는 실수들이 문제가 되는 이유는 IDE에서 컴파일하는데 문제가 없기 때문이다...
댓글 없음:
댓글 쓰기