반응형

C++1z 2

[C++17] 템플릿 인자를 생략한다? Deduction Guide

​1부터 10까지 저장하는 배열을 하나 생성해보죠. int nArray[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; 아니면 간단히 int arr[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // C++11에는 중괄호를 두 번씩 써야 함: {{1, 2, 3 ... 10}} std::array array{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; 그런데, 자료형이 모두 int이고 그 개수가 10개라는건 뻔히 알 수 있습니다. 굳이 이 필요할까요? ​ 그래서 C++17에서는 Deduction Guide라는 것을 사용합니다. 만약에, 우리가 어떤 (템플릿) 클래스를 만드는데, 생성자의 매개변수가 문자열일때, char*가 아닌 std::string으로 받..

C++ 2020.03.21

[카루의 C++강좌] 0. 시작하며 & 목차

안녕하세요! 카루입니다. C++도 다 같은 C++이 아니라는 것 알고 계시죠? C++의 역사를 살펴보자면, 처음에 공식으로 승인된 표준안 ISO/IEC 14882:1998 (약칭 C++98) 을 시작으로 C++의 공식 표준안이 시작이 되죠. 그 후 별로 변한 게 없던 C++03이 나오고, 2007년 TR1 (테크니컬 리포트)가 제정되면서 슬슬 변하기 시작합니다. 마침내 2011년 8월 12일, ISO/IEC 14882:2011, C++11이라는 이름으로 완전히 새롭게 변한 C++이 제정되었고, 현재 대부분의 책도 C++11을 기준으로 설명합니다. 이 이후로 3년에 한 번씩 업데이트가 진행되면서 C++14에서 사소한 개선이 되다가, 또다시 C++17을 거치면서 크게 변하고, 마침내 2020년 현재 C++2..

반응형