개발하는 리프터 꽃게맨입니다.

  • 홈
  • 태그
  • 방명록

2024/01/09 2

[C++/STL] vector 컨테이너 설계 코드

template class Iterator { public: Iterator(T* item) : _item(item) {} public: T* operator++() { return ++_item; } T* operator--() { return --_item; } T* operator+(int idx) { return _item + idx; } T* operator-(int idx) { return _item - idx; } int& operator*() { return *_item; } int& operator->() { return *_item; } bool operator==(const Iterator& other) const { return _item == other._item; } bool o..

자료구조/자료구조 설계 2024.01.09

[C++] 예외처리

C++ 예외 처리 C++ 에는 예외처리를 지원하긴 하지만 엄청 중요하게 다루지는 않습니다. 예외처리를 꼼꼼하게 하기는 어려울 뿐더러 예외처리는 속도가 느리기 때문이죠. 실제로 예외처리 구문에 대한 디스어셈블리를 살펴보면 코드가 엄청 많이 생성된 것을 볼 수 있습니다. C++가 속도를 중요시하는 언어인 만큼 예외 처리보다는 assert 나 if 문으로 처리하는 것이 가독성면에서나 속도면에서나 이득이라는 것이죠. 프로그래밍하면서 가장 많이 발생하는 오류는 범위 이탈(out of range)와 nullptr 참조겠죠? 이들은 모두 if 한 줄로 처리 가능합니다. 동적 할당시 메모리 부족 문제도 if 문으로 처리가 가능하구요. 그래서 대부분의 상황에서는 예외처리는 불필요할 뿐더러, 에러코드를 사용하는 방법이 더..

언어/C, C++ 2024.01.09
이전
1
다음
더보기
프로필사진

개발하는 리프터 꽃게맨입니다.

개인 공부용 블로그입니다.

  • 분류 전체보기 (169)
    • 개발 이야기 (0)
    • 알고리즘 (1)
      • 문제 풀이 (9)
      • 알고리즘 이론 (15)
    • 자료구조 (12)
      • 자료구조 설계 (4)
      • 자료구조 이론 (8)
    • 컴퓨터 구조 & 운영체제 (0)
    • 언어 (28)
      • C, C++ (22)
      • C# (6)
      • Effective Modern C++ (0)
    • 게임 엔진 (0)
      • Unity (0)
      • Unreal (0)
    • 멀티스레드 프로그래밍 (2)
      • Concurrency in action C++ (2)
    • Window API (6)
    • 컴퓨터 그래픽스 (22)
      • 수학 (22)
      • DirectX 11 (8)
    • 물리엔진 (1)
      • Game Physics Engine Develop.. (0)
      • 게임 개발자를 위한 물리 (1)
    • 기타 개발 지식 (10)
      • 디자인패턴 (7)
      • 깃, 깃허브 (0)
    • 🔒 개인 저장용 코드 (1)
    • 공부 계획 (2)
    • 잡담 (6)
      • 운동이야기 (2)
    • 스터디 자료 (8)
      • 코드코치 파이썬 (3)

Tag

싱글톤 패턴, 싱글톤, 이,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2024/01   »
일 월 화 수 목 금 토
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 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바