Heim > Artikel > Backend-Entwicklung > Hier sind einige Titeloptionen, die von allgemein bis spezifisch reichen: Breit: * Wie gehe ich mit Ausnahmen in C um: Alle oder nur bestimmte Ausnahmen abfangen? * Ausnahmebehandlung in C: Best Practices zum Abfangen von E
Alle Ausnahmen in C abfangen
In Java ermöglicht der Try-Catch-Block Entwicklern, Ausnahmen ordnungsgemäß zu behandeln. Die Anweisung „catch“ (Throwable t) fängt alle Ausnahmen ab. In ähnlicher Weise fängt in C der folgende Codeblock alle Ausnahmen ab:
<code class="cpp">try { // ... } catch (...) { // ... }</code>
Obwohl sich dieser Mechanismus für Debugging-Zwecke als nützlich erweisen kann, wird er im Allgemeinen als schlechtes Design angesehen. In C ist es vorzuziehen, bestimmte Ausnahmen abzufangen und jede entsprechend zu behandeln.
Wenn Sie jedoch mit Legacy-Code arbeiten, der neu geschrieben werden muss, oder den C 11-Mechanismus std::current_Exception nicht verwenden können, können Sie dies tun Fügen Sie separate Catch-Klauseln für bekannte Ausnahmen hinzu und fangen Sie alle unerwarteten Ausnahmen am Ende ab:
<code class="cpp">try { // ... } catch (const std::exception& ex) { // ... } catch (const std::string& ex) { // ... } catch (...) { // ... }</code>
Auf diese Weise können Sie die spezifische Ausnahme identifizieren, die aufgetreten ist, und sie entsprechend behandeln.
Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen, die von allgemein bis spezifisch reichen: Breit: * Wie gehe ich mit Ausnahmen in C um: Alle oder nur bestimmte Ausnahmen abfangen? * Ausnahmebehandlung in C: Best Practices zum Abfangen von E. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!