비버놀로지

[Modern C++] Initializer list 초기화 리스트 본문

LANGUAGE STUDY/C C++

[Modern C++] Initializer list 초기화 리스트

KUNDUZ 2023. 1. 16. 16:44
728x90

Initializer list 초기화 리스트

  • braced - init - list { ... } 로 원소들을 담은 type
  • braced - init - list 가 초기화 또는 대입에 사용되는 경우, auto에 바인딩 되는 경우 자동 생성
  • Narrow-conversion (암시적 타입 변환, 데이터 손실이 있는 변환) 불가
  • 모든 class의 기본 생성자 및 대입연산의 인자로 initializer_list type이 제공됨, 따라서, STL container를 포함한 모든 객체를 {} 활용해 생성 및 대입가능

 

 

initializer_list<int> il {1,2,3,4,5};
for (auto x : il ) cout << x << '  ';


set<int> s{1,2,3,4,5};		// 1,2,3,4,5
s = {5,6};					// 5, 6
vector <pair<int,int>> v {{1,2},{3,1},{2,5}};

 

 

728x90

'LANGUAGE STUDY > C C++' 카테고리의 다른 글

[Modern C++] Operator  (0) 2023.01.17
[Modern C++] mem function  (0) 2023.01.16
[Modern C++] class vs struct  (0) 2023.01.16
[Modern C++] range-based for loop  (0) 2023.01.16
[Modern C++] Template  (0) 2023.01.16
Comments