[C++] 일반적인 new vs Placement new
·
C++
일반적인 new 연산자 Class *p = new Class(10);동작 과정1. 메모리 할당 (malloc)2. 생성자 호출3. 주소 반환=> 메모리 + 생성자 호출을 모두 수행 Placement newvoid* buffer = malloc(sizeof(Class));Class* p = new(buffer) Class(10); // 메모리 할당 + 생성자 호출 placement new -> 메모리 할당 생략, 이미 할당된 buffer에 객체 생성 void* operator new(std::size_t, void* place) noexcept { return place; } 즉, new(buffer) 는 opeartor new(sizeof(Class), buf..
MMORPG 학습프로젝트 - 프로젝트 루트 설계
·
Unreal Engine 5
Content/ │ ├── Core/ # 게임 전반을 관리하는 핵심 모듈 │ ├── GameModes/ │ ├── GameInstances/ │ ├── PlayerController/ │ ├── PlayerState/ │ ├── HUD/ │ └── UI/ │ ├── Characters/ # 플레이어 및 몬스터 │ ├── Player/ │ ├── Monsters/ │ └── Animations/ │ ├── Combat/ # 전투 시스템 │ ├── Skills/ │ ├── Buffs/ │ ├── DamageSystem/ │ └── HitReaction/ │ ├── World/ ..
C++ 코딩 테스트 기본 지식
·
C++/코딩 테스트
1. 입력 크기(시간 복잡도 추정) 문제의 N(입력 크기) 를 보면 어떤 알고리즘을 써야 할지 감이 옵니다.입력 크기 추천 알고리즘/기법 시간 복잡도 예시 N ≤ 20완전 탐색(Brute Force), 백트래킹O(2^N), O(N!)N ≤ 1,000DP, Greedy, 정렬 기반O(N^2)N ≤ 100,000그래프 탐색, 고급 자료구조O(N log N), O(N)N ≤ 1,000,000매우 효율적 알고리즘 필요O(N), O(log N)그 이상수학적 공식, 특수 알고리즘O(1) ~2. 자료형 크기 감각 자료형 ..
코딩 테스트 알고리즘 유형 정리
·
C++
🔹 정렬(Sorting)알고리즘 시간 복잡도 특징 비고버블 정렬 (Bubble Sort)O(N²)인접한 원소 swap구현 쉬움, 비효율적선택 정렬 (Selection Sort)O(N²)최소/최대 선택 후 swap데이터 크기 작을 때삽입 정렬 (Insertion Sort)O(N²)앞 부분 정렬 유지하며 삽입거의 정렬된 경우 빠름퀵 정렬 (Quick Sort)평균: O(N log N)최악: O(N²)분할 정복Pivot 선택 중요병합 정렬 (Merge Sort)O(N log N)분할 정복, 안정 정렬추가 메모리 필요힙 ..
Unreal Engine 5 공격시 넉백 기능 구현
·
Unreal Engine 5/MMORPG 개발
공격 로직플레이어의 공격 키 입력 -> (서버) 공격 가능 상태 확인 -> (멀티 캐스트) 상태 변화 및 애니메이션 호출 데미지 처리애니메이션을 이용하여 Anim Notify 호출 -> (Local) Multi Sphere Trace For Objects를 통하여 타격 확인 -> 타격된 대상을 Cast를 이용하여 플레이어인지 확인 -> (서버) 데미지 처리 및 넉백 처리 -> (멀티 캐스트) 상태 업데이트 문제점문제점 1 - AnimNotify 호출 과정에서 1회 호출이 아닌 N회 호출해결법 :Notify Begin와 End를 설정하고 Begin 함수의 첫 호출에서 Bool 변수를 True로 End에서 False로 변경한다.-> 공격자에게 이를 설정할 경우 한 번에 연속적인 공격 구현이 어려움-> 피격대..
컴활 정리 엑세스 - 처리 기능 구현
·
자격증/컴퓨터 활용능력
그룹 쿼리 / 매개 변수 쿼리매개 변수 쿼리 -> Like를 사용하여 데이터를 입력받[만들기] -> 쿼리 -> 쿼리 디자인[쿼리 디자인] -> 표시/숨기기 -> 요약 -> 묶는 방법 지정정렬 기준 or 조건 지정 크로스탭 쿼리[만들기] -> 쿼리 -> 쿼리 마법사 -> 크로스탭 쿼리 마법사[만들기] -> 쿼리 -> 쿼리 디자인 -> 쿼리 유형 -> 크로스탭 불일치 검색 쿼리Not In (Select...) 사용[만들기] -> 쿼리 -> 쿼리 마법사 수정 쿼리[만들기] -> 쿼리 -> 쿼리 디자인 -> 쿼리 유형 -> 업데이트 추가 쿼리[만들기] -> 쿼리 -> 쿼리 디자인 -> 쿼리 유형 -> 추가 테이블 생성 쿼리[만들기] -> 쿼리 -> 쿼리 디자인 -> 쿼리 유형 -> 테이블 만들기