본문 바로가기

언어/C++

7장 7번~8번 원 면적 (전위,후위 연산자 개념)

#include <iostream>
using namespace std;

class Circle {
	int radius;
public : 
	Circle(int radius=0) { this->radius = radius; }
	void show() { cout << "radius = " << radius << " 인 원" << endl; }
	Circle operator ++() {
		radius++;
		return *this;
	}
	Circle operator ++(int n) {
		Circle temp = *this;
		radius++;
		return temp;
	}
};
int main() {
	Circle a(5), b(4);
	++a;
	b = a++;
	a.show();
	b.show();
}
#include <iostream>
using namespace std;

class Circle {
	int radius;
public : 
	Circle(int radius=0) { this->radius = radius; }
	void show() { cout << "radius = " << radius << " 인 원" << endl; }
	friend Circle operator +(int n, Circle c);
};
Circle operator +(int n, Circle c) {
	Circle temp;
	temp.radius = n + c.radius;
	return temp;
}
int main() {\
	Circle a(5), b(4); 
	b = 1 + a;
	a.show();
	
	b.show();
}