목록분류 전체보기 (91)
정체불명의 모모
저번 정리가 너무 세세하고 요점이 보이지 않아서 개인적으로 아니다 라고 느껴서 이번에는 깔끔하게 정리를 해보았습니다. CHAPTER2. Vector 와 String 내용 정리 1. 배열을 버리고 vector 와 string을 사용해야 하는 이유 2. vector 와 string의 수행 성능을 높이는 방법 3. string의 여러 가지 구현 방식 4. vector 와 string 데이터를 매개 변수로 넘기는 방법 5. 과도한 메모리 할당을 피하는 방법 1. 배열을 버리고 vector 와 string을 사용해야 하는 이유 동적으로 배열 할당 할 시 문제점 : 메모리 해제에 일일이 신경써야 한다. ▷ vector 와 string의 경우 - 자체적으로 메모리 관리 요소 삽입 시 : 스스로 메모리 확장을 하고, ..
회사에 다닌지 3주가 조금 넘었다. 현재 회사는 당장의 프로젝트 업무 보단 공부를 업무로 주었다. 돈 받으면서 공부라니 너무 행복하면서 복잡한 마음이다. 그러면서 요즘 포스팅도 자주 올리게 되었고, 더 언어에 가까워진 것 같다. 현재 회사에서 공부하라고 한 책은 'Effective STL' 이다. 이것을 공부하면서 내가 얼마나 부족한지 다시 한번 느꼈고 그래서 기초에 대한 강의(따배씨c++) 를 보고 있다. 언어의 기본 강의 와 STL책을 보고 있으니깐, 왠지 점점 기초가 단단해 지는 것이 느껴진다. 실제로 많은 기술 면접을 통해 얻은 얕은 지식 과 합쳐져 더 빨리 알아 가는 것 같다. 솔직히 속으론 많이 조바심도 나고 있다. 프로젝트 업무에 참여하고 있지 않다보니, 보여 준게 없어 수습 평가가 어떻게 ..
간단한 테스트로 결과를 확인해 보자! 1. 상속 관계에서 생성자, 소멸자 호출 순서 2. 상속 관계에서 virtual 소멸자 호출 1. 상속 관계에서 생성자, 소멸자 호출 순서 위의 출력값 처럼 상속 구조에서 생성자는 부모 생성자 -> 자식 생성자 -> 자식 소멸자 -> 부모 소멸자 부모에서 자식을 호출해서 생성하고 소멸시에 자식에서 닫고 선 부모도 마저 소멸시킨다. 2. 상속 관계에서 virtual 소멸자 호출 위 코드와 다른 부분은 Parent * parent = new Child ; 이렇게 객체를 생성했을 때, 자식의 소멸자는 호출 되지 않는 걸 확인 할 수 있습니다. 이 때, 부모 클래스의 소멸자에 virtual 키워드를 넣게 되면 자식의 소멸자도 불러와 지게 됩니다. 짜잔~ 정상적으로 자식의 소..
vector와 deque는 거의 동일한 인터페이스를 제공하고 대부분의 경우에 서로 바꾸어도 동작이 가능 할 정도로 유사하다. "그럼 어떤 차이점이 있는 걸까?" 메모리 가장 중요한 차이점은 메모리에서의 연속성이다. vector는 메모리가 연속적이다. deque는 메모리가 연속되어 있지 않다. Deque Deque의 특징 Deque는 어느 방향으로도 iterate(참조) 가 가능하다. DQ[2] 이런것이 가능하다. vector와 다르게, 양쪽 끝 모두에서 원소 삽입, 삭제가 가능하다. 그리고, 중간에 insert, erase도 가능하다. 하지만 연속되어 있는것처럼 보이지만 연속되어 있지 않다. 메모리에 쪼개서 보관한다 메모리(메모리 관리에 효율적) 일관적인 성능을 보장한다. 때문에 vector와는 다르게 ..