Paskaitų konspektai - Matematikos ir Informatikos fakultetas ...
Paskaitų konspektai - Matematikos ir Informatikos fakultetas ...
Paskaitų konspektai - Matematikos ir Informatikos fakultetas ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Standartin÷s klaidų klas÷s<br />
Standartin÷ C++ biblioteka pateikia klaidų klasių hierarchiją:<br />
exception<br />
|<br />
+----bad_alloc . . . . . . . . . new<br />
|<br />
+----bad_cast. . . . . . . . . . dynamic_cast<br />
|<br />
+----bad_exception<br />
|<br />
+----bad_typeid. . . . . . . . . typeid<br />
|<br />
+----ios_base::failure . . . . . ios_base::clear()<br />
|<br />
+----logic_error<br />
| |<br />
| +----domain_error<br />
| |<br />
| +----invalid_argument<br />
| |<br />
| +----length_error<br />
| |<br />
| +----out_of_range . . . at()<br />
|<br />
+----runtime_error<br />
|<br />
+----overflow_error<br />
|<br />
+----range_error<br />
|<br />
+----underflow_error<br />
Visos standartin÷s klaidų klas÷s iš bazin÷s klas÷s exception paveldi metodą what(),<br />
kuris grąžina klaidos pranešimą. Standartin÷s bibliotekos klaidų klasių hierarchija -<br />
puikus klaidų grupavimo naudojant paveld÷jimą pavyzdys: užtenka gaudyti bazin÷s<br />
klas÷s exception klaidas <strong>ir</strong> kartu pagausime visas paveld÷tas klaidų klases.<br />
Prisiminkime: kad šis mechanizmas veiktų, reikia gaudyti nuorodas į objektą, o ne<br />
patį objektą.<br />
Kartu pamatysime, jog vector klas÷s perkrautas operatorius [] netikrina masyvo<br />
r÷žių, o analogiškas metodas at() meta klaidą, jei elemento indeksas neatitinka<br />
masyvo elementų kiekio:<br />
110