(작성중)배열 vs 다형성(more effective c++ 03)
2015. 7. 25. 03:50ㆍ프로그래밍/Effective C++
728x90
728x90
다형성
기본 클래스 객체의 포인터나 참조자를 통해 파생 클래스 객체를 조작할 수 있다.
이런 포인터와 참조자를 다형성을 가지고 있다라고 말한다.
마치 여러개의 타입처럼 쓰인다는 말이다.
파생 클래스 객체의 배열(array)을 기본 클래스 포인터나 참조자를
이용해 다형적으로 사용하려고 하면?.. 이것은 문제!
- 컴파일러는 배열에 들어있는 각 객체의 크기가 sizeof(base 객체)라고 가정한다.
(실제로는 derived 객체여야 하기때문에 문제가 생긴다.)
- 컴파일러는 배열의 크기만큼 메모리를 읽기 때문에 결과를 예상할 수 없다.
728x90
반응형
'프로그래밍 > Effective C++' 카테고리의 다른 글
#define 안녕(effective c++ 02) (0) | 2015.07.27 |
---|---|
C++은 연합체로 바라보자(effective c++ 01) (0) | 2015.07.27 |
객체 복사(effective c++ 12) (0) | 2015.07.26 |
C++ 캐스팅(more effective c++ 02) (0) | 2015.07.25 |
객체 초기화(effective c++ 04) (0) | 2015.07.24 |
pointer vs reference (more effective c++ 01) (0) | 2015.07.21 |
private 상속에 대하여(effective c++ 39) (0) | 2015.07.19 |