프로그래머/CPP_강의정리

cpp Modern C++ 중괄호 초기화

미역국마싯 2021. 11. 23. 19:20

중괄호{ } 초기화

초기화 방식을 통일 시키고 축소 변환을 방지하는데 의미를 둔다.

 

여러가지 초기화 방식을 살펴보자.

class MakeClass
{
public:

};

int a = 0;
int b(0);
int c{ 0 };		// 중괄호 초기화

MakeClass mc;
MakeClass mc2 = mc;	// 복사 생성자
MakeClass mc3{ mc2 };

중괄호 초기화는 컨테이너와 잘 어울린다.

// vector 기존 초기화 방법
vector<int> v1;
v1.push_back(1);
v1.push_back(2);

vector<int> v2(3, 1);

// 중괄호 초기화
vector<int> v3{ 1, 2, 3, 4 };

배열 초기화 방식처럼 벡터를 초기화 할 수 있다.

 

축소 변환 방지는 데이터 유실을 방지하는 것이다.

int x = 0;
double y = x;	// 정수 -> 실수로 변환되면서 일부 데이터 유실 가능

double y{ x };	// error 발생

 

 

 

출처

https://www.inflearn.com/course/%EC%96%B8%EB%A6%AC%EC%96%BC-3d-mmorpg-1/dashboard

 

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문 - 인프런 | 강의

시리즈를 원활하게 학습하기 위한 기초적인 C++ 문법들에 대해 학습합니다. 어셈블리 언어부터 시작해서 기본 C++ 문법, STL, C++11까지 핵심적인 내용을 압축해서 다루게 됩니다., - 강의 소개 | 인

www.inflearn.com

 

'프로그래머 > CPP_강의정리' 카테고리의 다른 글

cpp Modern C++ using  (0) 2021.11.24
cpp Modern C++ nullptr이 생긴 이유  (0) 2021.11.23
cpp Modern C++ auto  (0) 2021.11.23
cpp algorithm 라이브러리  (0) 2021.11.23
cpp STL 기타 연관 컨테이너  (0) 2021.11.23