int num1; // default initialization
int num2{}; // value initialization, C++11 (기본으로 0으로 초기화)
int num3(); // constructor initialization

Value Initialization

// Uniform Initialization
// 모든 종류의 변수를 한 가지 방법으로 초기화.
// 중괄호 초기화(brace-init) 이라고도 부른다.

// Copy Initialization (= 를 이용해서 초기화)
int n1 = {0};
Point p1 = {0, 0};
int x1[3] = {1, 2, 3};

// Direct Initialization (= 없이 초기화)
int n2{0};
Point p2{0, 0};
int x2[3]{1, 2, 3};

// 위 두가지의 차이점은 explicit에서 나타남.