728x90
반응형
객체 포인터
C 언어의 포인터와 동일하다.
객체의 주소 값을 가지는 변수이다.
포인터로 멤버를 접근할 경우
객체포인터 -> 멤버
객체 배열 선언 가능
기본타입 배열 선언과 형식 동일
객체 배열 선언
1. 객체 배열을 위한 공간 할당
2. 배열의 각 원소 객체마다 생성자 실행
매개변수 있는 생성자를 호출할 수 없다.
배열 소멸
배열의 각 객체마다 소멸자 호출. 생성의 반대순으로 소멸된다.
class Circle {
int radius;
public:
Circle() { radius = 1; }
Circle(int r) { radius = r; }
void setRadius(int r) { radius = r; }
double getArea();
};
double Circle::getArea() {
return 3.14 * radius * radius;
}
int main() {
Circle circleArray[3] = { Circle(10),Circle(20),Circle() };
Circle* cp = circleArray;
system("color 0f");
for (int i = 0; i < 3; i++) {
system("color 0f");
cout << "Circle " << i << "의 면적은" << circleArray[i].getArea()<<endl;
Sleep(400);
system("color 03");
cout << "[pointer] Circle " << i << "의 면적은" << cp->getArea() << endl;
cp++;
Sleep(400);
}
return 0;
}
728x90
반응형
'Archive > Develop' 카테고리의 다른 글
[ C++ ] 즐거운 은행 놀이 (0) | 2021.03.30 |
---|---|
[ Python ] First-Class Function(일급 함수)란? (0) | 2021.03.30 |
[ Python ] python Decorator 이용하기 | 코드를 간소화해보자! (0) | 2021.03.30 |
[ Oracle ] oracle 에서 기본으로 제공해주는 HR 스키마를 가지고 활용해보자! (0) | 2021.03.29 |
[ CodeUp ] 1차원 배열 | 1412 번 풀이 (0) | 2021.03.29 |