Содержание
- 2. Как не допустить логических ошибок при выполнении программы?
- 3. Некорректное создание объектов классов(1) class Table{ int *l,*w,*h; char* color; bool Init(int l1,int w1, int h1,char*
- 4. Некорректное создание объектов классов(2) bool Table::Init(int l1,int w1, int h1,char* col) { cout if( (l1>0) &&
- 5. Некорректное создание объектов классов(3) Table::Table (int len,int wid, int hei,char* col,bool& err) { cout h=new int;
- 6. Некорректное создание объектов классов(4) void Table::Print() { cout cout cout cout cout cout } Table::~Table() {
- 7. Некорректное создание объектов классов(5) int main() { bool err=false; Table * T= new Table(-10,10,10,"black",err); if(!err) {
- 8. Механизм исключений throw для обозначения кода ошибки try для начала блока, в котором может возникнуть «аварийная»
- 9. Что такое исключение Исключение – это объект, а не ситуация. С исключением можно работать как с
- 10. Определение исключения Синтаксис: throw выражение_генерации_исключения; Примеры: throw “Ошибка: деление на ноль”; throw 1; throw s[i];
- 11. Объект - исключение throw MyException(1,”Error 1”); // оператор-ловушка - catch(MyException m) throw new MyException(1,”Error 1”); //
- 12. Перехват исключения Синтаксис: try { /* контролируемый блок */ } catch (спецификация исключения № 1) {
- 13. Спецификация исключения (тип имя) Если необходимо объект – исключение использовать в блоке обработки (тип) Если в
- 14. Правила работы с try Если сработал хоть один блок обработки исключений, то последующие не выполнятся.
- 15. Правила работы с try Если сработал хоть один блок обработки исключений, то последующие не выполнятся. Последним
- 16. Правила работы с try Если сработал хоть один блок обработки исключений, то последующие не выполнятся. Последним
- 17. Правила работы с try Если сработал хоть один блок обработки исключений, то последующие не выполнятся. Последним
- 18. Пример: класс MyEx (1) class MyEx{ public: int code; char* message; MyEx(int a, char* b); ~MyEx();
- 19. Пример : класс MyEx (2) MyEx::MyEx (int a, char* b) { cout code=a; message=new char [
- 20. Пример : класс MyEx (3) MyEx::~MyEx() { cout delete[] message; }
- 21. Пример : генерация исключений(1) void Table::Init (int len ,int wid, int hei, char* col) { *l=len;
- 22. Пример : генерация исключений(2) Table::Table (int len, int wid, int hei, char *col) { if(len>0&&wid>0&&hei>0) {
- 23. Пример : генерация исключений(3) int main() { try { Table* T=new Table(-1,5,6, “green”); T->Print(); delete T;
- 24. Пример : генерация исключений(3) catch(...) { cout } return 0; }
- 26. Скачать презентацию