C++73 1. Recursive Function, Array 1.1 재귀함수1.1-1 단순 재귀 Ex)#pragma once#include void SimpleRecursion(int _nCount){ printf("%d\n", _nCount); if (1 == _nCount) { return; } SimpleRecursion(_nCount - 1);} Ex) 재귀함수를 이해하기 위한 가장 정확한 방법. 글쓴이는 이걸 "전개도를 펼친다"라고 생각함. 3차원의 도형을 전개해서 2차원으로 차원을 낮추는 것과 같음. 즉, 한 눈에 보기 편해서 쉬워짐.#include void recursive(int count){ if (4 == count) { return; } recur.. 2022. 10. 21. Chapter 08. 이동 문법 8.1 이동 생성자와 이동 대입 연산자 8.1-1 lvalue Def) lvalue 단일 식을 넘어 지속되는 개체 결국 지금까지 봐 온 많은 것들. Note) lvalue 종류 주소가 있음/이름 있는 변수/const 변수/배열 이름 비트 필드/공용체/클래스 멤버/ 좌측 값 참조로 반환하는 함수 호출/문자열 리터럴 // main.cpp #include using namespace std; struct Person { string mName; int mAge; } int main() { // lvalue int num = 10; // num const int NAME_MAX = 10; // NAME_MAX int* numberPtr = &num // numberPtr map scoreMap; // score.. 2022. 5. 9. Chapter 07. 스마트 포인터 7.1 unique_ptr 7.1-1 원시 포인터 Def) 원시 포인터(Naked Pointer) 이전까지 사용해오던 C 스타일의 포인터. 아무것도 없이 위험한 세상에 노출되어 있단 뜻. Note) 원시 포인터는 더이상 필요하지 않다면 메모리 해제 필수 MyVector* ptrVec = new MyVector(7.f, 7.f); ... delete ptrVec; ptrVec = nullptr; Note) 스마트 포인터는 delete를 직접 호출할 필요가 없음. 그래서 스마트임. 그리고 가비지 컬렉션보다도 빠름. 쓰이지 않는 순간 곧바로 지워주기 때문. Note) 스마트 포인터의 종류 - unique_ptr: 매우매우 중요한 스마트 포인터. 이를 이해하기 위한 문법을 하나 더 숙지하고 있어야 함. - sh.. 2022. 5. 8. Chapter 06. C++11/14/17 6.1 새로운 키워드 6.1-1 auto Def) auto 키워드 자료형을 추론함. 다만, C++은 컴파일 중에 자료형이 정해져야 하는 stronged type이기 때문에, 실제 자료형은 컴파일 동안 추론됨. 따라서 반드시 auto 변수는 초기화되어야 함.(참조랑 비슷) auto x1; // 컴파일 에러. auto x2 = "Hello"; // 컴파일 성공. 다만, 좋은 예는 아님. auto x3 = 3.141592; // 컴파일 성공. Note) Javascript와는 조금 다른 auto 키워드 // In JS. var x; // 컴파일 성공. x는 정의되지 않음. x = "Hello"; // 컴파일 성공. x는 문자열 x = 100; // 컴파일 성공. x는 정수 // In C++ auto x; //.. 2022. 5. 8. 이전 1 2 3 4 5 6 7 8 ··· 19 다음