C++ 동적할당의 고찰
C언어와 C++ 모두 공통적으로 포인터를 이용하여 프로그래밍이 가능하고 C++에서는 객체지향의 개념이 더해지면서 동적할당을 통해 객체를 관리할 수 있다. 간혹 C++에 관하여 찾다 보면 되도록 new를 이용하여 동적할당 하는 것을 피하라고 하는데 이유가 뭘까? class Foo { private: Bar bar; }; // End of scope 가령 이런 코드가 있다고 생각해보자. bar는 객체로써 사용될 수 있지만 포인터는 아니다. 이렇게 선언된 객체는 스코프가 종료되는 시점에서 자동으로 해제된다. 마치 GC처럼. 객체의 접근이 불가능 해지는 시점부터 해제되는 GC보다 오히려 좀 더 직관적인 해제 타이밍을 알 수 있다. C++이 포인터나 뭐나의 이유로 어렵다고 하는데, 생각보다 똑똑한 언어가 아닌가...
낙서
2017. 8. 7. 15:01
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- nodeal
- f320s
- c++11
- G2
- c++ struct
- OOP
- inline class
- rule_of_three
- rule_of_five
- dokdo 4.0.3
- CM11
- linaro
- dokdo project
- cyanogenmod
- C++ 업캐스팅
- C
- vector
- C++
- LG
- g2 korea
- dokdo-project
- PipelineContext
- CM10.2
- 포인터
- Kotlin
- 객체지향
- d802
- Java
- c++ 상속
- f320k
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함