So fangen Sie bestimmte Arten von Ausnahmen in C++ ab: Verwenden Sie Try-Catch-Blöcke. Geben Sie den Typ der Ausnahme an, die in der Catch-Klausel abgefangen werden soll, z. B. Catch (const std::runtime_error& e). In einem praktischen Fall behandelt die Funktion read_file() den Fall, dass die Datei nicht existiert, indem sie std::runtime_error auslöst und einen Try-Catch-Block verwendet, um diese Ausnahme abzufangen und die Fehlermeldung auszugeben.
Bestimmte Arten von Ausnahmen in der Ausnahmebehandlung von C++-Funktionen abfangen
Wenn Sie in C++ den Block try-catch
verwenden, um in einer Funktion ausgelöste Ausnahmen zu behandeln, können Sie verwenden Catch Die
-Klausel fängt bestimmte Arten von Ausnahmen ab. Um beispielsweise Ausnahmen vom Typ std::runtime_error
abzufangen, können Sie die folgende Syntax verwenden: try-catch
块处理函数中抛出的异常时,可以使用 catch
子句捕获特定类型的异常。例如,要捕获 std::runtime_error
类型的异常,可以使用以下语法:
try { // 函数代码 } catch (const std::runtime_error& e) { // 处理 std::runtime_error 异常 }
实战案例:
假设有一个 read_file()
函数,它负责从文件中读取数据。如果文件不存在,函数会抛出一个 std::runtime_error
异常。我们可以使用 try-catch
#include <iostream> #include <fstream> void read_file(const std::string& filename) { std::ifstream file(filename); if (!file.is_open()) { throw std::runtime_error("File not found"); } // 读取文件内容 } int main() { try { read_file("myfile.txt"); } catch (const std::runtime_error& e) { std::cerr << "Error: " << e.what() << std::endl; } return 0; }
Praktischer Fall:
🎜🎜Angenommen, es gibt einenread_file()</code > Funktion, die für das Lesen von Daten aus Dateien verantwortlich ist. Wenn die Datei nicht vorhanden ist, löst die Funktion eine <code>std::runtime_error
-Ausnahme aus. Wir können einen try-catch
-Block verwenden, um diese Ausnahme zu behandeln: 🎜Error: File not found
Das obige ist der detaillierte Inhalt vonWie fängt man bestimmte Arten von Ausnahmen in der Ausnahmebehandlung von C++-Funktionen ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!