2026-03-18 TIL (17일차)
Unreal 💡 Tip FString 출력 시 %s 서식 지정자 FString을 %s 서식 지정자로 출력할 때 FString 변수나 반환값 앞에 *를 반드시 붙여야 합니다. 오류 이유 %s: %s 서식 지정자는 글자들이 나열된 메모리 주소를 원합니다. (C스타일 포인터) 사용자의 입력: FString이라는 객체을 던져주었기 때문입니다. ...
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 <...
C++ 공부 3주차 과제 도전기능 1.friend 키워드 (공부) friend로 함수를 만들게 되면 클래스 안에 포함되어 있으나 멤버 함수는 아니며 프렌드 함수의 본체는 외부에서 따로 정의된다. 즉, 이 말은 전역함수가 된다는 의미로 나는 받아들였다. 그래서 테스트를 위해 코드를 한번 작성해봤다. //class.h void test(); cla...
SOLID 원칙 코드를 구현할 때 재사용성 있게 구현한다. 1) 유지보수성 및 확장성 향상 2) 변경에 유연한 설계 제공 1.단일 책임 원칙(SRP) 각 클래스는 하나의 책임만 가져야 한다는 원칙입니다. ex) 점수 계산하는 클래스가 있으면 점수 계산 기능만 있어야지 점수를 세팅하고 체점하는 그런 다른 기능은 원칙에 어긋난다. 2.개방 폐쇄...
예비군 훈련
C++ 공부 1. override 사용 이유 virtual함수가 구현될 때 자식 클래스에서 virtual함수 구현할 때 실수 방지용으 사용된다. 2. 오버로딩 (Overloading) vs 오버라이딩 (Overriding) ● 오버로딩: 같은 이름의 함수를 매개변수의 타입이나 개수만 다르게 하여 중복 정의 ● 오버라이딩: 상속 관계에서 부모의...
C++ 강의 (2주차) 스마트 포인터 원리: 스마트 원리의 핵심 원리는 new / delete를 사용하지 않는 자동 메모리 관리 unique_ptr ● 힙 메모리에 대해 독점적 소유권을 가지는 스마트 포인터 (주소 하나에 포인터 하나) ● 소유권 이전은 가능하지만 동시에 가리키는거는 불가 ...