일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 게임공학과
- 프레임워크
- thread
- multi-core
- random access
- Unreal
- C
- Design Pattern
- 멀티코어
- 멀티코어 프로그래밍
- 옵저버 패턴
- 쓰레드
- 옵저버
- 복사생성자
- c++
- 스마트포인터
- 메모리관리
- observer pattern
- Atomic
- EFFECTIVE C++
- Multithread
- 한국산업기술대학교
- sequential
- 디자인패턴
- MultiCore
- material
- vector
- 유니크포인터
- 멀티쓰레드
- stl
- Today
- Total
목록메모리관리 (3)
태크놀로지
1. 대입연산자는 *this의 참조자를 반환하게 하자 (convention) int x,y,z; x = y = z = 15; 위와 같이 대입연산은 여러개가 사슬처럼 엮일 수 있다. x = (y = (z = 15)); 또 하나의 특성은, 우측 연관 연산이라는 점이다. class Widget{ public: Widget& operator= (const Widget& rhs){ //... return *this; } } 이렇게 대입 연산이 사슬처럼 엮이려면 대입연산자는 좌변인자에 대한 참조자를 반환하도록 구현되어야 한다. (일종의 convention) +=, -=, *= 등 모든 형태의 대입연산자에서도 Convention이 적용된다. 2. operator=에서 자기대입에 대한 처리가 빠지지 않도록 하자 cla..
생성자 : 새로운 객체를 메모리에 만드는데 필요한 과정을 제어하고 객체의 초기화를 맡는다. 소멸자 : 객체를 없앰과 동시에 그 객체가 메모리에서 적절히 사라질 수 있도록 하는 과정을 제어한다. 대입연산자 : 기존의 객체에 다른 객체의 값을 줄 때 사용하는 함수 : 다음포스팅에서 진행 1. C++이 자동으로 만들어서 호출해 버리는 함수들에 촉각을 세우자 클래스안에 직접 선언해 넣지 않으면 컴파일러가 스스로 선언해 주도록 되어 있는 함수들 class Empty{ public: Empty() = default; Empty(const Empty& rhs) = default; ~Empty() = default; Empty& operator=(const Empty& rhs) = default; } 암시적(Impli..
스마트 포인터 연산자 & 메서드 구현하기 이전에 만들었던 유니크 포인트에서 unique_ptr에서 제공하는 메서드와 연산자를 분석해보며 구현해보도록 합시다. get / release / reset / operator-> /operator= STL std::unique_ptr 코드 분석 - get / operator-> _NODISCARD pointer operator->() const noexcept { return _Mypair._Myval2; } _NODISCARD pointer get() const noexcept { return _Mypair._Myval2; } 유니크 포인터 객체의 포인터를 반환해줍니다. - release pointer release() noexcept { return _STD ..