#include <iostream>
using namespace std;
class Circle {
int radius;
public:
Circle(){radius = 1;}
Circle(int radius){ this->radius = radius;}
void setRadius(int radius) { this -> radius = radius;}
double getArea(){return 3.14*radius*radius; }
};
Circle getCircle() {
circle tmp(30);
return tmp;
}
int main() {
Circle c;
cout << c.getArea() << endl;
c = getCircle();
cout << c.getArea() << endl;
}
getCircle에서 생성한 tmp가 그대로 전달되는 것이 아닌 복사본이 전달된다고 한다.
정확하게 메모리 공간은 어떻게 되는지는 모르겠다/