[C++11] Converting constructors (Braced list syntax)
이제 변환 생성자는 '중괄호로 묶여진 값들도 생성자의 인자로 받아들인다'. #include class A { public: A(int) {} A(int, int) {} A(int, int, int) {} }; int main(void) { A a {0, 0}; // calls A::A(int, int); A b{0, 0}; // calls A::A(int, int); A c = {0, 0}; // calls A::A(int, int); A d {0, 0, 0}; // calls A::A(int, int, int); } 하지만 여기에는 특별한 규칙이 있는데 '축소 변환(narrowing)' 같은 상황을 방지한다. A e(1.1); // calls A::A(int); A f {1.1}; // error 그리..
C++/Modern C++(11, 14, 17, 20)
2023. 8. 24. 16:27