inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

bogoomi님의 블로그

bogoomi bogoomi

@bogoomi

수강생
-
수강평
-
강의 평점
-

블로그 21

항목13 - 자원 관리에는 객체가 그만!

항목13 - 자원 관리에는 객체가 그만!

자원해제 delete는 왠만하면 소멸자서 실행하자.(스마트 포인터를 사용해 자동으로 소멸하게끔 해도 좋음) but, 스마트포인터나 trd::shared_ptr은 delete를 사용하지, delete[]를 사용하지 않는다. 동적배열을 사용하였을 경우 delete로는 모든 메모리를 초기화 시킬 수 없다..(에러도 안난다고 하니 조심하자) 자원해제를 일일이 하다...

좋아요수
0
  • CPP
  • C++
  • EffetiveC++
항목12 - 객체의 모든 부분을 빠짐없이 복사하자

항목12 - 객체의 모든 부분을 빠짐없이 복사하자

객체 복사 시 모든 데이터 멤버가 빠지지 않도록 하자. 객체 복사 시 모든 기본 클래스 부분이 빠지지 않도록 하자. 복사 생성자와 대입 연산자 구현할때 주의점 - 한쪽을 이용해 다른 한쪽을 구현하려고 하지 말자 - 필요 시 공통된 동장을 제 3의 함수에 분리하자 - 양쪽에서 이 함수를 호출하도록 구현하자 객체 복사 함수 생성 시 주의해야할 것 - 사용자가 ...

좋아요수
2
  • CPP
  • C++
  • EffectiveC++
UE4 콜리전(Collision)

UE4 콜리전(Collision)

콜리전(Collision)은 언리얼 엔진에서 물리적인 충돌이나 레이 캐스팅 실시간 처리를 해준다. 이러한 물리 시뮬레이션은 Collision Response(콜리전 반응) 및 Trace Response(트레이스 반응) 설정을 통해서 다른 오브젝트 유형과 어떻게 상호작용할지 정의된다. 종류 - 블록(Ignore) 충돌하는 두 오브젝트가 모두 블록이어야 두 오...

좋아요수
0
  • CPP
  • C++
  • UE4
항목11 - operator= 에서는 자기대입에 대한 처리가 빠지지 않도록 하자!

항목11 - operator= 에서는 자기대입에 대한 처리가 빠지지 않도록 하자!

operator= 에서는 자기대입에 대한 처리가 빠지지 않도록 하자! 자기대입이란(self assignment)? 어떤 객체가 자기 자신에 대해 대입연산자를 적용하는 것을 말함 w = w; a[i] = a[j]; *px = *py; 같은 값을 같거나 같은 값을 가르키면 그것은 자기대입이 성립됨. 자기대입이 생기는 이유는 여러 곳에서 하나의 객체를 참조하는 ...

좋아요수
0
  • CPP
  • C++
  • EffectiveC++
LV1 - 최소직사각형 만들기

LV1 - 최소직사각형 만들기

의 min, max 함수에 대한 이해랑 숙련도가 부족했다. min, max를 생각을 미처 못했다. - min(a, b) : a와 b를 비교하여 가장 작은 값을 반환한다. - max(a, b) : a 와 b를 비교하여 가장 큰 값을 반환한다. 내 풀이 int solution(vector > sizes) { int answer = 0; vector W; vec...

좋아요수
0
  • CPP
  • C++
  • 알고리즘
항목9 - 객체 생성 및 소멸 과정 중에는 절대로 가상 함수를 호출하지 말자

항목9 - 객체 생성 및 소멸 과정 중에는 절대로 가상 함수를 호출하지 말자

항목 9: 객체 생성 및 소멸 과정 중에는 절대로 가상 함수를 호출하지 말자 이유 객체의 생성과 소멸과정 중 가상 함수가 소멸된 상태면 링킹 에러가 발생한다. 파생 클래스의 데이터가 아직 초기화된 상태가 아니기 때문에, C++은 아예 없었던 것처럼 취급하고 파생클래스의 가상 함수는 기본클래스의 가상함수를 기반으로 이뤄진다. 요약 기본 클래스 생성자 호출 시...

좋아요수
0
  • CPP
  • C++
  • EffecitveC++
항목8 - 예외가 소멸자를 떠나지 않도록 붙들어 놓자

항목8 - 예외가 소멸자를 떠나지 않도록 붙들어 놓자

예외가 소멸자를 떠나지 못하도록 붙들어 놓자. 소멸자가 호출 되는 경우 1. 정상적으로 객체가 종료되었을 때 2. 예외처리 메커니즘에 의해 객체가 소멸될 때 소멸자가 예외가 있으면 안되는 이유 예를 들어 10의 크기를 갖는 벡터 v가 있다. 함수를 사용한 다음에서야 10개 만큼 메모리가 해제된다. 만약 v의 첫번째 주소에서 문제가 생겨 예외가 발생했다면??...

좋아요수
0
  • CPP
  • C++
  • EffectiveC++
LV1 - 문자열내마음대로정렬하기

LV1 - 문자열내마음대로정렬하기

1. sort 함수 이용하여 strings 정렬하되 사용자정의 함수인 'cmp()' 사용 2. 비교 함수 cmp를 만들어 조건에 맞게 되있으면 true, 아니면 false - Code #include #include #include using namespace std; int N; vector solution(vector strings, int n); bo...

좋아요수
0
  • C++
  • CPP
LV1 - 같은 숫자는 싫어

LV1 - 같은 숫자는 싫어

배열에서 반복되는 수를 제거하여 나열하라. algorithm 라이브러리에서 'unique'라는 키워드를 이용해 배열을 중복된 수가 없이 나열시킨다. 그 후 erase라는 vector 명령어를 통해 나열되고 필요없는 데이터들은 지운다. 굉장히 깔끔하고 멋진 코드인 것 같다. #include #include #include using namespace std;...

좋아요수
0
  • CPP
  • C++
  • 알고리즘