본문 바로가기

c++52

Chatper 8 - 실습 title: "C++ lecture section8 [1/1]" excerpt: "실습" categories: Cpp_lecture tags: [C++] toc: true toc_sticky: true toc_label: "목차" date: 2022.10.06 14:30:00 TextRPG(OOP) #1 / #2 / #3 // Game.h class Player; // 전방선언 class Field; class Game { public: Game(); ~Game(); void Init(); void Update(); void CreatePlayer(); private: Player* _player; Field* _field; }; // Game.cpp #include "Game.h" #include "P.. 2023. 3. 29.
Chapter 7 - 동적 할당 동적 할당 #1 코드 영역 : 실행할 코드가 저장되는 영역 데이터 영역 : 전역(global) / 정적(static) 변수가 저장되는 영역 스택 영역 : 지역 변수 / 매개 변수가 저장되는 영역 힙 영역 : 동적 할당이 이루어지는 영역 스택 영역은 함수가 끝나면 정리되는 불안정한 메모리 따라서 잠시 함수에 매개변수를 넘긴다던가 하는 용도로 적합함 데이터 영역은 프로그램이 실행되는 도중 무조건 사용됨 따라서 필요할 때 사용하고, 필요없으면 반납할 수 있는 힙 영역이 유용하게 쓰임 힙 영역에서 동적 할당이 이루어짐 malloc, free, new, delete, new[], delete[] 프로그램의 구동 영역에는 유저 영역과 커널 영역이 있음 커널 영역 : Windows 등의 핵심 코드 유저 영역 : 메모.. 2023. 3. 29.
Chapter 6 - 객체지향 여행 객체지향의 시작 절차(procedural)지향 프로그래밍 : 함수가 메인 객체(object)지향 프로그래밍 : 객체가 메인, 객체에는 데이터와 데이터를 조작하는 동작이 모두 포함됨 class Knight { public: // 멤버 함수 void Move(int y, int x); void Attack(); void Die() { _hp = 0; cout 2023. 3. 29.
Chapter 5 - 포인터 포인터 기초 #1 일반 변수는 함수 호출시 원본 대신 복사본이 사용됨 따라서 원본 변수를 조작할 수 있는 포인터가 필요함 TYPE* 변수명의 형태로 사용 포인터 변수에는 값이 아닌 주소값이 저장됨 포인터 변수의 크기는 항상 4바이트(32비트) 또는 8바이트(64비트)로 고정 일반 변수의 주소값은 변수 앞에 &연산자를 사용함 int* ptr = &number; : ptr 포인터 변수에 number 변수의 주소를 대입 *포인터변수의 형태로 사용할 경우 해당 포인터 변수가 가리키는 주소에 저장된 값을 지칭함 int value = *ptr; : value 변수에 ptr 포인터 변수가 가리키는 주소에 저장된 값을 대입 *ptr = 2: ptr 포인터 변수가 가리키는 주소에 저장된 값을 2로 변경 포인터 기초 #2.. 2023. 3. 29.