자료구조
선형/비선형 자료구조 : 연속적/비연속적 메모리 구조
선형 자료구조
배열 : stack에 할당
동적배열 : heap에 할당
- 배열
- 동적 배열
- 연결 리스트
- 스택
을 구현해 보는 작업을 했다.
구현 후에, template T로 범용성을 넓혀 구현하는 작업도 진행하며 템플릿의 특징을 정리해 보았다.
template T
- .h 헤더파일에 모두 구현해야 함. (컴파일 타임에 다 해석되어야 하기 때문)
.cpp에 구현도 가능하지만, 구조가 이상해짐
- 템플릿이 복잡성을 증가할 수 있다.
예) const char*같은 경우, 따로 선언이 필요.
-> 템플릿을 만들기 전에, 사용 범위 다시 생각해 보고 구현하기
- 템플릿 생성자에서, 기본 생성자 초기값 설정을 다음과 같이 설정하면 입력된 형식자에 맞게 초기값 설정됨.
//템플릿 생성자 부분
Node()
: data() //입력된 형식자를 기준으로 기본값이 설정. 0, nullptr..
{
}
T data
콘솔 엔진 제작
최근 엔진들은 컴포넌트 형태로 구성한다.
(Unity에서 GameObject를 생성하면 Transform을 가지고 있는 것이 아닌, Transform 컴포넌트를 가진다. )
Unreal Engine은 기존 상속구조에서 컴포넌트로 변경되었다.
범용적으로 생각한다면 컴포넌트 형태를 사용해야 한다.
하지만, 현재 우리가 제작 중인 콘솔엔진은 컴포넌트 형태로 제작하여도
껍데기 컴포넌트가 될 것이라 상속 구조로 작성한다.
'C++ > 수업 내용' 카테고리의 다른 글
[ C++ 4일차 ] static, 형변환, RTTI, 파일입출력, 비트 배열 (0) | 2024.12.30 |
---|---|
[ C++ 3일차 ] 상속, 객체와 포인터의 관계, virtual 함수, 연산자 오버로딩 (1) | 2024.12.27 |
[ C++ 2일차 ] class, 동적 메모리, C++의 고유 문법, 지평좌표계.. (1) | 2024.12.26 |
[ C++/문제 해결 ] class의 깊은 복사와 임시 객체를 통한 생성 오류 (0) | 2024.12.26 |