C++ の try-catch ブロックは、プログラムの予想を超える異常なイベントを処理し、プログラムのエラーやクラッシュを防ぐために使用されます。構文は次のとおりです: try {...} catch (constException& e) {...}。ここで、try ブロックは例外をスローする可能性のあるコード、catch ブロックは例外を処理するコードです。使用上のヒント: 例外処理には関数内で try-catch を使用するようにしてください。例外の種類を示すために特定の例外クラスを使用します。catch ブロック内で複数の句を使用して、さまざまな例外を処理できます。 : rethrow() は例外を再スローします。 noexc キーワードを使用して関数を宣言すると、例外はスローされません。
C++ テクノロジでの例外処理: try-catch ブロックを使用して例外を処理します
例外とは、プログラムの予期を超えて発生するイベントであり、プログラム エラーやクラッシュを引き起こす可能性があります。 C++ は、これらの例外を処理する例外処理メカニズムを提供します。
try-catch ブロック
try-catch ブロックは、例外を処理するために使用される制御構造です。その構文は次のとおりです:
try { // 可能会抛出异常的代码 } catch (const exception& e) { // 处理异常的代码 }
実践例
これは、try-catch ブロックを使用してファイル オープン例外を処理するコード例です:
#include <fstream> #include <iostream> using namespace std; int main() { ifstream file; try { file.open("test.txt"); if (!file.is_open()) throw runtime_error("文件打开失败"); // 文件处理代码 file.close(); } catch (const exception& e) { cout << "异常消息:" << e.what() << endl; } return 0; }
コードでは、最初にファイルを開こうとします。ファイルを開けない場合は、runtime_error
例外がスローされます。 catch ブロックで例外をキャッチし、例外メッセージを出力します。 runtime_error
异常。我们在 catch 块中捕获该异常并输出异常消息。
使用 tips
std::rethrow()
重新抛出一个异常。noexcept
std::rethrow()
を使用して例外を再スローできます。 🎜noexcel
キーワードを使用して、関数がコンパイル時に例外をスローしないことを宣言します。 🎜🎜以上がC++ テクノロジにおける例外処理: try-catch ブロックを使用して例外を処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。