函數傳回值是函數執行後的結果,型別可以是基本型別、自訂型別或 void。傳回類型在函數聲明中指定,void 表示不傳回值。傳回值含義由函數實作決定,例如,可以表示結果、函數狀態或資料指標。在實戰案例中,triangleArea 函數傳回三角形面積或在非法輸入時拋出異常,main 函數處理傳回值並顯示結果或錯誤訊息。
C 函數傳回值的內幕:類型、意義一覽
在C 程式設計中,函數傳回值是函數執行後的結果。它可以是基本資料型別(如 int、float)、自訂資料型別(如 struct、class)或 void。
函數的傳回值型別定義了函數所傳回的值的型別。在函數宣告中指定傳回值型別:
int myFunction();
以上程式碼宣告了一個名為myFunction
的函數,其傳回值型別為int,這表示該函數會傳回一個int 值。
void
是一個特殊的回傳值類型,表示函數不會傳回任何值。使用 void
作為傳回值類型時,函數宣告應如下所示:
void myFunction();
函數傳回值的意義取決於函數本身的實作。它可能表示操作的結果、函數的狀態或指向資料的指標。
例如,以下函數傳回兩個數字的和:
int add(int a, int b) { return a + b; }
而以下函數傳回一個表示函數成功(true)或失敗(false)的布林值:
bool isSuccessful() { // ... 函数体 ... return true; }
計算三角形面積:
#include <iostream> #include <cmath> using namespace std; double triangleArea(double base, double height) { if (base <= 0 || height <= 0) { throw invalid_argument("Base and height must be positive"); } return 0.5 * base * height; } int main() { double base, height; cout << "Enter the base of the triangle: "; cin >> base; cout << "Enter the height of the triangle: "; cin >> height; try { double area = triangleArea(base, height); cout << "The area of the triangle is: " << area << endl; } catch (invalid_argument& e) { cout << e.what() << endl; } return 0; }
#此範例的傳回值意義:
函數傳回三角形的面積,如果傳遞的任何參數(底、高)為非正數,則拋出
invalid_argument 例外。
函數中,如果計算成功,
triangleArea 的回傳值被儲存在
area 變數中並列印出來。
函數會捕捉
invalid_argument 異常並顯示錯誤訊息。
以上是C++ 函數傳回值的內幕:型別、意義一覽的詳細內容。更多資訊請關注PHP中文網其他相關文章!