til 93

[C++]Alogorithm헤더파일

순서algorithm 헤더파일이란?주요 알고리즘 함수algorithm 헤더파일이란?앞서 다룬 클래스 템플릿 + 멤버 함수로 구성된 sstream 헤더와는 다르게 algorithm 헤더는 함수 템플릿임 C++ 표준 라이브러리에 포함된 헤더로 범위기반 알고리즘 함수들을 제공함정렬, 검색, 수치 연산, 변환, 집계에 이용함algorithm 헤더 특징템플릿 함수로 구성되어 컨테이너 타입과 무관하게 사용할 수 있음반복자를 사용하여 번위를 지정함주요 알고리즘 클래스, 함수알고리즘 함수들은 클래스 컨테이너(vector, list 등)의 요소에 접근하기 위해 반복자 클래스와 함께 사용함관련 반복자 클래스vector, list, set는 ::iterator 범위를 지정하여 사용함reverse, istream, ostre..

C++ 2025.07.08

[Unreal Engine]Unreal_C++ 빌드 프로세스

순서Visual Studio C++ 빌드 설정Visual Studio C++ 빌드Visual studio C++ 빌드 설정코드의 빌드 과정.코드를 컴파일(Compile)을 거쳐 링크(Link)를 하면 동적 라이브러리(DLL)가 생성된다.생성된 DLL은 언리얼 에디터에 로드되고, 새로 작성한 클래스, 함수 등이 게임과 에디터 내에서 즉시 반영됨.빌드 구성 및 플랫폼 확인Visual studio 상단 툴바에서 빌드 구성(Configuration)과 플랫폼(Platform)을 설정할 수 있음빌드 구성(Configuration)DebugGame게임 로직만 디버그 정보를 포함, 엔진은 최적화된 상태로 빌드에디터가 아닌 독립 실행 파일 환경에서 디버깅이 가능DebugGameEditor에디터 환경에서 게임 로직을 디..

Unreal Engine 2025.07.07

[C++] <sstream>헤더파일

순서sstream이란 무엇인가?sstream이 제공하는 주요 클래스sstream이란 무엇인가?C++ 표준 라이브러리의 헤더파일이다.string 기반 stream class들을 제공하여 문자열(string)을 입력/출력 stream처럼 처리할 수 있도록 도와줌sstream이 제공하는 주요 클래스istringstream문자열로부터 입력 스트림을 생성함. istringstream ex)#include #include #include using namespace std;int main() { string data = "123 456 789"; istringstream iss(data); int a, b, c; iss >> a >> b >> c; cout ostringstream출력 ..

C++ 2025.07.04

[C++]객체 지향 프로그래밍 OOP 4가지 특징

순서OOP란?추상화캡슐화상속다형성객체 지향 프로그래밍의 장점.OOP란?OOP는 Object-Oriented-Programming의 약자로 객체 지향 프로그래밍을 의미함.프로그램을 데이터와 그 데이터를 조작하는 함수를 하나의 객체로 묶어 관리하는 프로그래밍 패러다임이다.추상화(Abstraction)객체지향 프로그래밍에서 추상화는 어떤 대상을 구현할 때, 본질적인 특징을 정의하고 정의에 기반하여 대상을 객체로 구현하는 것.추상화를 통해 복잡성을 줄이고, 객체를 더 쉽게 이해하고 사용할 수 있음.캡슐화(Encapsulation)객체의 데이터와 메서드를 하나로 묶어 외부에서 직접 접근하지 못하도록 보호하는 것.캡슐화를 통해 객체의 내부 구현을 숨기고, 외부에 의한 직접적인 변경으로부터 보호할 수 있음.상속(In..

C++ 2025.07.03

[C++] toupper, tolower

순서헤더toupper 함수tolower 함수toupper, tolower함수 공통 설명헤더c++에서 헤더를 include 하여 toupper과 tolower을 사용할 수 있음toupper 함수toupper: 입력된 소문자를 대응하는 대문자로 변환해주는 역할시그니처는 int toupper(int c) 형태이다.반환값반환값은 int형으로 반환됨. 만약 인자가 소문자면 대문자로 바꾼 값의 int, 그 외는 그대로 반환됨.tolower 함수tolower: 입력된 대문자를 대응하는 소문자로 변환해주는 역할시그니처는 int tolower(int c)형태이다.반환값반환값은 int형으로 반환됨. 만약 인자가 대문자면 소문자로 바꾼 값의 int, 그 외는 그대로 반환됨.toupper, tolower 함수 공통 설명인자인..

C++ 2025.07.02

[Unreal Engine] Actor의 라이프사이클

순서Actor란?라이프사이클이란?Actor의 라이프사이클Actor란?레벨에 배치할 수 있는 모든 오브젝트를 의미함.카메라, 스태틱 메시, 플레이어 시작 위치 등 게임 내에서 상호작용하는 모든 것들이 Actor라고 할 수 있음.Actor는 이동, 회전, 크기조정과 같은 3D변환을 지원함.라이프사이클이란?액터(Actor)가 생성되고, 작동하며, 파괴되는 전체 과정을 의미함.Actor의 라이프사이클생성(Instantiation/Spawn)액터(Actor)가 게임 월드에 생성되는 단계초기화(Initialization)생성된 액터가 사용되기 전에 초기화되는 단계 - BeginPlay 이벤트나 생성자에서 초기화 작업을 할 수 있음.작동(Tick)액터가 매 프레임마다 실행되는 로직을 수행하는 단계. Tick함수 또..

Unreal Engine 2025.07.01

[C++] 생성 패턴/싱글톤 패턴

순서싱글톤패턴이란?싱글톤패턴의 사용예싱글톤패턴의 장점과 단점싱글톤패턴 사용시 고려사항간단한 싱글톤패턴작성싱글톤패턴이란?Singleton패턴은 class의 instance가 단 하나만 존재하도록 보장하고, 전역적으로 접근할 수 있는 지점을 제공하는 디자인 패턴임.싱글톤패턴의 사용예DB게임내부의 ManagerPlayer(싱글 게임이라면)싱글톤패턴의 장점과 단점장점전역 접근: 어디서든 같은 인스턴스에 접근 가능메모리 절약: 하나의 인스턴스만 생성되므로 메모리 관리에 효율적데이터 일관성: 전역 상태를 하나의 객체로 관리단점테스트 어려움: 전역상태로 인해 단위 테스트가 복잡함결합도 증가: 여러 클래스가 Singleton에 의존하게됨멀티스레딩 문제: 스레드 안정성을 고려해야함확장성 문제: 나중에 여러 인스턴스가 필..

C++/디자인패턴 2025.06.20

[C++] TRPG(TextRPG) Character제작

순서Character class 생성기능 분류변수와 함수 선언Character class 생성Character.h파일 작성#pragma once#include #include class Item;class Character {private: static Character* charInstance; std::string name; //플레이어 이름 int level = 1; //레벨 int maxLevel = 10; int health = 0; //현재 체력 int maxHealth = 0; //최대 체력 int attack = 0; //공격력 int experience = 0; //경험치 int needExperience = 100; int gold = 0; //소지 골드 Item* equipWeapon..

C++ 2025.06.19

[C++]FMath

순서FMath란?FMath의 함수FMath란?언리얼 엔진에서 수학 연산을 위한 정적 함수들을 모아둔 유틸리티 클래스C++의 와 같은 역할을 하며, 벡터 연산, 난수 등을 다룰 때 자주 사용함FMath는 인스턴스를 만들 필요 없는 static 클래스이다.FMath의 함수를 사용할 때는 FMath::함수이름()의 형태로 사용함정수, 실수, 벡터 관련 연산 대부분을 포함하고 있음왜 를 두고 FMath를 사용할까?C++의 보다 게임 최적화와 관련된 고성능 수학 연산용으로 설계되었기 때문FMath의 함수Abs() - 절댓값Clamp() - 값의 범위 제한Lerp() - 선형 보간Rand() - 0 ~ Rand_Max 정수 난수FRand() - 0 ~ 1 사이 float 난수 RandRange(a, b) - a ~..

C++ 2025.06.18