#include //03.h
using namespace std;
class Circle { // Circle 선언
int radius;
public:
Circle(int r); // r을 저장하는 생성자
int getRadius(); // radius 반환
void setRadius(int r); // r을 저장
void show(); // 출력
};
void increaseBy(Circle &a, Circle &b); // 참조에 의한 호출
#include // 03.cpp
#include"03.h"
using namespace std;
Circle::Circle(int r) { // r을 저장하는 생성자
radius = r;
}
int Circle::getRadius() { // radius 반환
return radius;
}
void Circle::setRadius(int r) { // r을 저장
radius = r;
}
void Circle::show() { // 출력
cout << "반지름이 " << radius << "인 원" << endl;
}
void increaseBy(Circle &a, Circle &b) { // 참조에 의한 호출
int r = a.getRadius() + b.getRadius(); // a와 b의 radius를 더함
a.setRadius(r); // r을 a의 radius로 저장
}
#include // 03_main.cpp
#include"03.h"
using namespace std;
int main() {
Circle x(10), y(5); // Circle 타입의 x,y선언 x엔 10 y엔 5
increaseBy(x, y); // x의 radius에 y의 radius를 더함
x.show(); // 출력
}