練習 2:延伸圓圈及球形類別

在此練習中,您要使用 C++ 視覺化工具以及您在第一個練習建立的類別圖,來新增作業至圓圈和球形類別。

在前一個練習中,您是使用 C++ 視覺化工具來檢視 C++ 形狀專案的階層。您也可以使用 C++ 視覺化工具來新增類別至專案,或新增內容和方法至類別。在此練習中,您要新增 getCircumference 方法至圓圈和球形類別。getCircumference 方法會使用半徑,計算形狀和圓圈的圓周。

新增 getCircumference 方法至圓圈類別

計算圓圈之圓周的公式,是 pi x r x r,其中的 r 是圓圈的半徑。廣域常數 pi 是儲存在基礎形狀類別中。

若要新增 getCircumference 方法至圓圈類別:
  1. 在圖型編輯器中,用滑鼠右鍵按一下 classdiagram.dnx 圖型內的圓圈類別; 然後按一下新增 C/C++ > 方法。
  2. 建立 C++ 方法視窗中, 於名稱欄位輸入 getCircumference
  3. 傳回類型清單中, 選取 double,再按一下完成
  4. 圓圈類別中, 按兩下 getCircumference 方法,並在 程式碼編輯器中,指定 getCircumference 方法的主體,如下所示:
    {return pi * (2 * getSize());};
  5. 在程式碼編輯器中,在列印方法內加入下列程式碼行:
    << "\n\tCircumference = " << getCircumference()

現在您已經新增 getCircumference 方法至圓圈類別。getCircumference 方法會使用來自 getSize 方法的大小變數以及廣域常數 pi, 來計算圓周。同時,您也修改了列印方法,將 getCircumference 方法的輸出印出。

新增 getCircumference 方法至球形類別

計算球形在最大直徑處的圓周公式,是和前一個步驟使用的公式相同。

若要新增 getCircumference 方法至球形類別:
  1. 在圖型編輯器中,用滑鼠右鍵按一下 classdiagram.dnx 圖型內的球形類別; 然後按一下新增 C/C++ > 方法。
  2. 建立 C++ 方法視窗中, 於名稱欄位輸入 getCircumference
  3. 傳回類型清單中, 選取 double,再按一下完成
  4. 球形類別中, 按兩下 getCircumference 方法,並在 程式碼編輯器中,指定 getCircumference 方法的主體,如下所示:
    {return pi * (2 * getSize());};
  5. 在程式碼編輯器中,在列印方法內加入下列程式碼行:
    << "\n\tCircumference = " << getCircumference()

現在您已經使用 UML 視覺化開發工具以及程式碼編輯器, 新增 getCircumference 方法至圓圈和球形類別內。

執行形狀應用程式

您可以藉由修改 main.cpp 類別,來執行應用程式。main.cpp 類別是 C++ 形狀應用程式的驅動程式。

若要執行形狀應用程式:
  1. C/C++ 專案瀏覽器視圖中, 按兩下 main.cpp 類別。
  2. 在程式碼編輯器中,於程式主體內,加入下列程式碼:
    //實例化及執行球形類別
    sphere sp;
    sp.print();
    sp.set();
    sp.print();
  3. 若要儲存並建置專案,按一下檔案 > 儲存
  4. 按一下執行 > 執行
  5. 執行視窗中, 從配置清單內,按兩下 C/C++ 本端
  6. 專案欄位中,輸入形狀
  7. C/C++ 應用程式欄位中, 按一下瀏覽,並在 Shapes\debug 目錄中選取 Shapes.exe 執行檔。
  8. 按一下執行

形狀程式就會在「主控台」視圖中執行,並顯示下列輸出:

輸入球形的半徑:10
輸入球形的顏色:藍色
球形:	半徑 = 10
	圓周 = 62.8319
	區域 = 1256.64
	面積 = 4188.79
	顏色 = 藍色

程式會顯示現有形狀的大小與顏色,並提示您指定新形狀的值。新形狀的屬性會顯示在「主控台」視圖中。您可以修改 main.cpp 中,用來執行圓圈類別的程式碼。

如果要繼續,請至練習 3:建立圓錐類別