본문 바로가기

카테고리 없음

[C++] 사각형(Rectangle) 클래스 구현

class Rectangle
{
	private :
	int w, h;

	public :

	Rectangle()
	{
	}
	Rectangle(int wi, int he)
	{
		w = wi;
		h = he;
	}

	int GetArea()
	{
		if((h < 1) || (w < 1))return - 1;
		return h * w;
	}

	int GetGirth()
	{
		if((h < 1) || (w < 1))return - 1;
		return (h * 2) + (w * 2);
	}
};

void main()
{
	Rectangle rec(4, 6);
	cout << "면적 : " << rec.GetArea() << endl;
	cout << "둘레 : " << rec.GetGirth() << endl;
}

프로그램 실행화면


클래스를 만들어 보면 왜 클래스 단위로 묶어 놓으면 편한지 가장 빠르게 알 수 있다. 사각형에 대해 구현할 기능이 있다면 바로 이 사각형 클래스를 만들어놓고 사용하면 되기 때문이다.


만약 필요에 의해 더 구현해야 할 기능이 있다면 상속을 받아 추가할 수도 있다. 보통 그럴일은 거의 없지만 말이다. 생성자를 통해서 가로 세로 길이를 입력받고 그 면적과 둘레를 출력해 주는 내용이다.


만약 가로와 세로의 길이가 입력되지 않았다면 -1이 return되도록 해 놓았다. 프로그램을 만들 때 가장 조심해야 하는 부분이 바로 이런 부분이라고 나는 생각한다.


오류를 발생시키는 상황을 만들면 안되고 오류가 일어났을 경우 바로 알 수 있게 출력해 주어야 한다.