이 연습에서는 C++ Visualizer와 첫 연습에서 작성한 클래스 다이어그램을 사용하여 원 및 구 클래스에 오퍼레이션을 추가합니다.
이전 연습에서는 C++ Visualizer를 사용하여 C++ Shapes 프로젝트의 계층 구조를 보았습니다. 또한 C++ Visualizer를 사용하여 프로젝트에 클래스를 추가하거나 클래스에 특성 및 메소드를 추가할 수 있습니다. 이 연습에서는 getCircumference 메소드를 원 및 구 클래스에 추가합니다. getCircumference 메소드는 반지름을 사용하여 구 및 원의 원주를 계산합니다.
원의 원주를 계산하는 수식은 pi x r x r이고, 여기서 r은 원의 반지름입니다. 글로벌 상수 pi는 기본 쉐이프 클래스에 저장되어 있습니다.
{return pi * (2 * getSize());};
<< "\n\tCircumference = " << getCircumference()
이제 getCircumference 메소드를 원 클래스에 추가했습니다. getCircumference 메소드는 getSize 메소드의 크기 변수와 글로벌 상수 pi를 사용하여 원주를 계산합니다. 또한 print 메소드를 수정하여 getCircumference 메소드의 출력을 인쇄했습니다.
가장 지름이 큰 구의 원주를 계산하는 수식은 이전 단계에서 사용했던 수식과 동일합니다.
{return pi * (2 * getSize());};
<< "\n\tCircumference = " << getCircumference()
이제 UML 비주얼 개발 도구 및 코드 편집기를 사용하여 getCircumference 메소드를 원 클래스와 구 클래스 모두에 추가했습니다.
main.cpp 클래스를 수정하여 응용프로그램을 실행할 수 있습니다. main.cpp 클래스는 C++ 쉐이프 응용프로그램에 대한 드라이버입니다.
//instantiate and run the sphere class sphere sp; sp.print(); sp.set(); sp.print();
쉐이프 프로그램이 콘솔 보기에서 실행되고 다음 출력이 표시됩니다.
Enter the radius of the sphere: 10 Enter the color of the sphere: Blue Sphere: Radius = 10 Circumference = 62.8319 Area = 1256.64 Volume = 4188.79 Color = Blue
프로그램은 현재 쉐이프의 크기와 색상을 표시하고 새 쉐이프에 대한 값 지정을 요구하는 프롬프트를 표시합니다. 새 쉐이프의 속성이 콘솔 보기에 표시됩니다. main.cpp의 코드를 수정하여 원 클래스를 실행할 수 있습니다.
계속하려면 연습 3: 원뿔 클래스 작성을 진행하십시오.