auto
type deduction(타입 추론) 해준다.
값을 보고 type을 추론한다.
추론 규칙은 복잡하기 때문에 중급자 이상일 때 알아보는걸 추천한다.
int i = 3;
float f = 3.14f;
double d = 45.32;
MakeClass mc = MakeClass();
const char* word = "hello";
auto i = 3;
auto f = 3.14f;
auto d = 45.32;
auto mc = MakeClass();
auto word = "hello";
auto를 사용할 때 주의할 점은 const와 &을 무시한다는 점이다.
int a = 3;
int& ref = a;
const int cst = a;
auto test1 = ref; // auto -> int
auto test2 = cst; // auto -> int
따라서 const와 &가 있는 type을 추론할 때에는 const auto, auto& 이렇게 사용하면 된다.
기존에 존재하던 type을 사용하지 않고 auto만 사용하면 되지 않을까?
auto만 사용하면 가독성이 떨어지는 문제가 있다. int 타입을 보면 어떤 데이터를 가지고 있는지, 메모리 크기가 몇 바이트인지 직관적으로 알 수 있지만, auto는 그렇지 않기 때문이다.
auto가 유용할 때는 타이핑이 길어지는 경우이다.
vector<int>::iterator it;
auto it;
출처
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++ nullptr이 생긴 이유 (0) | 2021.11.23 |
---|---|
cpp Modern C++ 중괄호 초기화 (0) | 2021.11.23 |
cpp algorithm 라이브러리 (0) | 2021.11.23 |
cpp STL 기타 연관 컨테이너 (0) | 2021.11.23 |
cpp STL MAP (0) | 2021.11.22 |