首頁 >後端開發 >C++ >C++ 中如何處理函式異常?

C++ 中如何處理函式異常?

WBOY
WBOY原創
2024-04-12 21:06:02757瀏覽

異常處理是 C 中用來處理執行階段錯誤的機制。透過 throw 拋出異常,並使用 try、catch 和 finally 程式碼區塊捕獲和處理異常。具體語法如下:try { // 可能引發例外狀況的程式碼}catch (const std::exception& e) { // 擷取並處理例外狀況}catch(...) { // 擷取所有例外}

C++ 中如何处理函数异常?

如何在C 中處理函數異常

異常處理是C 中處理運行時錯誤的一種機制。使用 throw 關鍵字拋出異常,並使用 try、catch 和可能選項 finally 程式碼區塊來捕獲和處理異常。

語法:

try {
  // 可能引发异常的代码
} catch (const std::exception& e) {
  // 捕获并处理异常
} catch(...) {
  // 捕获所有异常
}

實戰案例:

考慮下列函數,該函數將字串轉換為整數:

int string_to_int(std::string str) {
  try {
    int num = std::stoi(str);
    return num;
  } catch (const std::invalid_argument& e) {
    std::cout << "无法将字符串转换为整数" << std::endl;
    return -1;
  } catch (const std::out_of_range& e) {
    std::cout << "整数超出范围" << std::endl;
    return -1;
  }
}

在主函數中使用該函數:

int main() {
  std::string input = "123";
  int num;

  try {
    num = string_to_int(input);
    std::cout << num << std::endl;
  } catch (const std::exception& e) {
    std::cout << "出现异常: " << e.what() << std::endl;
  }

  return 0;
}

優點:

  • 提高程式健全性
  • ##允許在特定位置處理特定異常
  • 提供錯誤訊息和自訂錯誤處理
  • 防止程式意外終止

以上是C++ 中如何處理函式異常?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn