일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 복사생성자
- 프로세스
- 프로그래밍
- 언리얼5
- UE5
- effectivec++
- Unreal Engine5
- 생성자
- AI
- 디자인패턴
- 게임 개발
- 언리얼엔진
- 복사대입연산자
- 언리얼
- 언리얼 엔진5
- 배열
- 포인터
- 데이터구조
- 소멸자
- 자료구조
- Unreal
- Unreal Engine
- BehaviorTree
- 언리얼엔진5
- cpp개발
- 게임프로그래밍패턴
- CPP
- C++
- C언어
- 게임개발
- Today
- Total
목록프로그래밍 (5)
리얼 개발
항목 13 : 자원 관리에는 객체가 그만!아래의 코드를 생각해보자void Func(){ Klass* klass = new Klass; ... delete Klass;}함수 끝의 delete에 도달하기 전에 … 에서 어떤 일이 벌어져서 자원 해제가 되지 않을 수 있다.이런 일을 예방하기 위해 자원을 획득하면 자원 관리 객체에 넘기도록 하자.자원 획득 즉 초기화 (Resource Acquisition Is Initialization : RAII)자원 관리 객체는 자신의 소멸자를 사용해서 자원히 확실히 해제되도록 한다.스마트 포인터는 자원 관리 객체 중 하나이다. 요약사람은 언제나 실수를 안할 수 없다. 자원 누출을 막기 위해, RAII 객체를 사용하도록 하자. 항목 14 : 자원 관리 클래스의 복사 ..

저번 포스팅에서 제어문에 대해 살펴보았다. c언어의 함수와 똑같지만 c++ 에선 더 추가적인 기능들의 함수들이 있다. 함수의 개념부터 살펴보겠다. 함수의 기본 개념프로그래밍에서 함수의 기본 개념은 프로그램을 구성하는 기본 모듈이다. 함수는 코드를 재사용 가능하게 하고, 프로그램을 논리적인 단위로 나눠준다. 한 마디로 단순 반복작업을 줄이기 위해 사용하는 것이다.함수는 반환 타입, 함수 이름, 매개 변수 리스트, 함수 본문으로 구성된다.// 함수 정의int add(int a, int b) { return a + b;}// 함수 호출int result = add(3, 4); // result는 7 함수 정의와 프로토타입#include using namespace std;int add(int a, i..

저번 포스팅에서 변수가 저장되는 방법을 살펴보았다. 보통의 코드는 순차적으로 진행되지만 중간중간 흐름이 바뀔 수 있다. 이렇게 코드의 흐름을 바꾸는 명령을 control statement 즉, 제어문이라고 한다. 이번에는 분기(Branch)와 반복(Loop)에 대해 알아보겠다. Branchifswitchgoto논리, 관계연산자모든 일이 순차적으로 흘러가지는 않는다. 적어도 C++ 프로그램에선 반드시 특정 동작을 선택할 때가 온다. if문은 선택이 분기될 때 대표적으로 사용할 수 있는 제어문이다. ( ) 안 test-condition이 참이라면 { } 안의 코드가 실행되며, 거짓이라면 { } 안의 코드가 실행되지 않는다.if(test-condition){ //코드}else{ //코드}if(test-con..

저번 포스팅에서 첫 C++ 프로그램을 만들어 보았다. 하지만 화면에 글자만 출력하는 것으로는 진짜 프로그램이라고 말할 수 없다. 프로그램에 기능을 추가하기 위해 기본적으로 데이터가 존재해야한다. (계산기에서 계산 숫자를 보여줘야 하는것처럼) 우리가 C++ 에서 다룰 수 있는 데이터는 변수, 상수, 사용자 정의 등 다양하다. 이 중에 변수에 대해 알아보겠다. 변수는 타입(int) 과 이름(count) 가 존재한다. 그럼 count 변수는 어디에 저장되야 할까? 정답은 메모리이다. 윈도우와 같은 운영체제가 메모리를 독점하고 있다. 이때 우리가 변수를 선언하면 운영체제에게서 변수 타입의 크기만큼 공간을 받을 수 있다. 그 메모리 주소를 위 프로그램에선 "count" 라는 별명으로 부르는 것이다. 이렇게 메..
첫번째 C++ 프로그램을 만들어보자 #include using namespace std;int main(){ cout 해당 코드는 Visual Studio 2022 환경에서 작성했다. 코드 작성 후 Ctrl + F5 키를 눌러 빌드 및 실행을 해보자. #include 전처리기라고 부르며 컴파일 전에 이란 라이브러리 안에 들어있는 코드들을 그대로 복사해준다.using namespace std; 말 그대로 네임스페이스라고 부르며 함수나 클래스 혹은 변수 이름들을 구별할 수 있도록 하는 논리적인 공간이다. int main()프로그램 실행시 가장 먼저, 무조건 실행되는 함수이다. 더블클릭을 게임같은 프로그램을 실행할 때 이 main() 함수가 실행된다. 시작 함수이다.{ } 함수의 범위이다. main(..