2026-03-25 TIL (22일차)
C++ pair을 이용하여 vector 선언 vector는 연속된 메모리 공간에 데이터를 저장하는 배열 기반 컨테이너입니다. 여기에 pair를 넣으면, 각 칸마다 두 개의 데이터가 묶인 하나의 쌍이 저장됩니다. 메모리 저장 형태와 특징 저장되는 형태: 메모리 상에 (첫 번째 데이터, 두 번째 데이터), (첫 번째 데이터, 두 번째 데이터) ...
C++ pair을 이용하여 vector 선언 vector는 연속된 메모리 공간에 데이터를 저장하는 배열 기반 컨테이너입니다. 여기에 pair를 넣으면, 각 칸마다 두 개의 데이터가 묶인 하나의 쌍이 저장됩니다. 메모리 저장 형태와 특징 저장되는 형태: 메모리 상에 (첫 번째 데이터, 두 번째 데이터), (첫 번째 데이터, 두 번째 데이터) ...
알고리즘 메세지 지향 미들웨어 메세지 큐의 상위 개념인 메세지 지향 미들웨어(Message Oriented Middleware)를 알아야 합니다. MOM은 응용 소프트웨어 간의 비동기적 데이터 통신을 돕는 소프트웨어입니다. 보관: 메세지 백업 기능을 통해 지속성을 제공하므로, 송수신 측이 동시에 네트워크 연결을 유지할 필요가 없습니다. ...
C++ 디버깅 팁 노란색 화살표와 중단점 현재 상태: 노란색 줄 및 중단점이 가리키는 지점은 실행되지 않은 상태입니다. 실행 범위: 노란색 줄 및 중단점이 위쪽 줄까지는 실행이 완료되어 메모리에 값이 반영된 상태이고, 실행할 다음 명령어를 대기하고 있는 상태입니다. 중단점 관리 단축키 Ctrl + Sh...
과제 5번 도전과제(Unreal) 완료 후 제출결과물 확인 과제 5번의 필수 및 도전 기능을 모두 구현한 뒤, 제출 전 확인을 위해 깃허브(GitHub) 저장소에서 Download ZIP 버튼을 눌러 프로젝트를 다운로드했습니다. 압축을 풀고 Generate Visual Studio project files를 실행한 후 에디터를 켰는데, 아래와 같...
디버깅의 중요성 도전 과제로 넘어가면서 필수 기능들을 여러 클래스(Class)로 분리하고 연결하기 시작했습니다. 프로젝트의 규모가 커질수록 디버깅의 중요성이 커졌습니다. 💡 클래스 분리 시 주의점 기능이 여러 클래스로 쪼개지면, 오류가 났을 때 “어느 클래스의 어느 함수에서부터 잘못된 데이터가 넘어왔는지” 호출 스택을 따라가며 추적하는 능력이...
Unreal 💡 Tip FString 출력 시 %s 서식 지정자 FString을 %s 서식 지정자로 출력할 때 FString 변수나 반환값 앞에 *를 반드시 붙여야 합니다. 오류 이유 %s: %s 서식 지정자는 글자들이 나열된 메모리 주소를 원합니다. (C스타일 포인터) 사용자의 입력: FString이라는 객체을 던져주었기 때문입니다. ...
Unreal 💡 [Tip] 언리얼 핵심 라이팅(Lighting) 컴포넌트 언리얼 엔진에서 야외 환경을 구성하기 위한 5가지 핵심 라이팅 요소입니다. 핵심 컴포넌트 요약 컴포넌트 핵심 역할 비유 Directiona...
C++ 💡 [Tip] 벡터의 reserve(size_t _Newcapacity) ● vector의 현재 capacity를 수정합니다. ● _Newcapacity가 기존 capacity보다 작은 경우(_Newcapacity < capacity)에는 아무 일도 발생하지 않습니다. ● _Newcapacity가 기존 capacity보다 큰 ...
C++공부 임시 객체는 const 참조자(const T&)에 전달될 수 있으며, 함수가 실행되는 동안에는 죽지 않고 살아남는다. 추상 클래스(Abstract Class) 판별법 순수 가상 함수(virtual void func() = 0;)가 하나라도 포함되어 있다면 해당 클래스는 추상 클래스가 됩니다. 추상 ...
💡 [Pro-Tip] C++ 메모리 누수(Memory Leak) 잡아내기 12일차에 배웠던 메모리 누수를 더 쉽게 잡아내는 코드 동적 할당이 많은 게임 개발에서 메모리 누수는 치명적입니다. 아래 코드를 main 함수 최상단에 넣으면 프로그램 종료 시 출력 창에 누수 여부를 친절하게 알려줍니다. 선택이 아닌 필수입니다! #include <...