Modern C++11

less than 1 minute read

C++11

타입 추론, 초기화

  • auto, decltype
    • // auto func(int a, float b) -> decltype(a + b) { return a + b; }
  • Initialization
  • POD (Plain Old Data)

const expression

  • static_assert
  • constexpr

새로운 타입

  • nullptr
  • long long int
  • enum class

Move Semantics

Class Object

  • sizeof(Test::member);
  • override, final
  • 생성자, 소멸자
  • 형변환 연산자에서의 explicit
  • union

template

  • extern
  • using
  • 템플릿의 괄호처리
    • Outer<Inner > // C++03
    • Outer<Inner> // C++11
  • Variadic template

새로운 기능

alignas(alignof(float)) unsigned char c[sizeof(float)]

alignas(4) struct Test
{
	char a;
	int b;
};
  • 멀티태스킹 메모리 모델
    • TLS
  • Allow garbage collected implementations
    • 뭔지 잘 모르겠다.. 추후 작성…
  • Attributes

STL

  • thread
  • tuple
  • hash table
  • regular expression
  • smart pointer
    • unique_ptr, weak_ptr
  • random?
  • wrapper
  • type traits
  • 함수객체의 리턴형에 대한 방법?