C++ - C++11에서 추가된 사이즈 엄밀한 정수 타입

출처 C++11에서 새로 추가됨 int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t, int_fast8_t, int_fast16_t, int_fast32_t, int_fast64_t, uint_fast8_t, uint_fast16_t, uint_fast32_t, uint_fast64_t, int_least8_t, int_least16_t, int_least32_t, int_least64_t, uint_least8_t, uint_least16_t, uint_least32_t, uint_least64_t, intmax_t, uintmax_t, intptr_t, uintptr_t [u]intX_t int32_t 나 가장 많이 사용되지만 무려 optional...
더 읽기

C++ - __if_exists

출처 Visual C++ 전용 키워드 이다. __if_exists ( identifier ) { statements }; identifier에 전달한 식별자가 존재한다면 statements가 실행된다. 부정형으로 __if_not_exists가 있다. 컴파일 타임 때 실행. template<typename T> class X : public T { public: void Dump() { __if_exists(T::Dump) {...
더 읽기

C++ - 추상 기저 클래스

아래 코드처럼 virtual 이 붙은 가상 기반 클래스는 “모호성” 을 피하기 위함이다. class B : virtual public A{} class C : virtual public A{} class D : public B, public C{} 가상 기반 클래스가 아니라면 D 클래스가 생성시에 A 를...
더 읽기