Manipularea erorilor și siguranță
Scrieți cod C++ robust cu gestionarea corectă a erorilor - excepții, garanții de siguranță RAII, tipuri de sume și modele de programare defensive.
Strategii de excepții și erori
Excepții: arunca, încearcă, prinde
Înțelegeți mecanismul de excepție C++ — derularea stivei, ierarhia excepțiilor standard, excepțiile personalizate și când să preferați excepțiile decât codurile de eroare.
Excepție garanții de siguranță
Aflați cele trei niveluri de siguranță pentru excepții — de bază, puternică și fără aruncare — și cum le oferă RAII și copierea și schimbarea.
Strategii de tratare a erorilor: alegerea abordării corecte
Comparați excepțiile, codurile de eroare și std::expected — aflați când fiecare abordare este adecvată și cum să gestionați erorile din constructori, destructori și coduri cu mai multe fire.
Tip Securitate și programare defensivă
std::opțional, std::variant și std::expected
Utilizați tipurile de sumă C++17/23 pentru a reprezenta valori nullabile, uniuni sigure de tip și returnări de valoare sau eroare - eliminând clase întregi de erori în timpul compilării.
Tip Siguranță, aserțiuni și contracte
Utilizați sistemul de tip C++ pentru a preveni erorile în timpul compilării - enumerări puternice, modelul newtype, static_assert, aserțiunile de rulare și caracteristica contractelor viitoare.
Înțelegerea și evitarea comportamentului nedefinit
Aflați ce este comportamentul nedefinit, de ce există, cum îl exploatează compilatorii pentru optimizare și cum să îl detectați cu dezinfectante și avertismente ale compilatorului.