[C++]

[C++] 객체 배열

Jarvis2304 2022. 10. 8. 00:21

▶ 객체 배열

- 기본 타입 배열 선언과 형식 동일

int n[3];         //정수 형 배열 선언

Circle c[3];   //Circle 타입의 배열 선언

 

▷ 객체 배열 선언

1) 객체 배열을 위한 공간 할당

2) 배열의 각 원소 객체마다 생성자 실행

- c[0]의 생성자, c[1]의 생성자, c[2]의 생성자 실행

- 매개 변수 없는 생성자 호출

※매개 변수 있는 생성자를 호출할 수 없음 ※   ex) Circle circleArray[3](5);  //오류

▷ 배열 소멸

- 배열의 각 객체마 소멸자 호출, 생성의 반대순으로 소멸

- c[2]의 소멸자 ,c[1]의 소멸자, c[0]의 소멸자

 

 

▷Circle 클래스의 배열 선언 및 활용 예제

 

▷ 배열 생성과 활용(예제 실행과정)

 

 

▷ 객체 배열 생성시 기본 생성자가 호출

 

 

▷ 객체 배열 초기화

- 배열의 각 원소 객체당 생정자를 지정하는 방법

circleArray[0] 객체가 생성될 때, 생성자 Circle(10)호출

circleArray[1] 객체가 생성될 때, 생성자 Circle(20)호출

circleArray[2] 객체가 생성될 때, 생성자 Circle()호출

 

▷ 객체 배열 초기화

 

 

 

▷2차원 배열

 

 

 

 

 

 

 

 

 

참고문헌: 황기태,[명품 C++ Programming] 생능출판(2017), 671P