이제부터는 새로 알아가는 내용들이 될꺼 같다.
단순히 초기화할때 () 소괄호가 아닌 {} 대괄호로 초기화하는게 추가 된건가했다.
굳이 왜 초기화할때 소괄호로만 해도 되는데 대괄호가 추가된것일까? 라는 생각을 가졌는데 확인해보니 암시적 변환이 되면 안되는 것에 대해선 {} 대괄호로 처리하는 것으로 보인다.
실사용에서 아직 사용하지 않아서 이정도만 알꺼 같다.
class A
{
public:
A(int a) {}
};
A a(5); //기존 초기화
A b{ 5 }; //Uniform 초기화
A c{ 5.2 }; //Uniform 초기화 이지만 인자가 float 이나 dobule로 암시적 변환을 시도하기에 에러
'C++ > C++11' 카테고리의 다른 글
C++11 특징 (std::pair, std::tuple) (0) | 2021.03.10 |
---|---|
C++ 11 특징 ( R Value) (0) | 2021.03.09 |
C++11 특징 (lambda) (0) | 2021.03.03 |
C++11 특징( ranged for loop) (0) | 2021.03.03 |
C++11 특징 (auto) (0) | 2021.03.02 |