Содержание
- 2. Исключения 1 Синтаксис: try { } catch (тип имя) { } сatch (тип) { } catch(…)
- 3. Исключения 2 Пример: void* malloc(size_t n) { void* p = HeapAlloc(GetProcessHeap(), 0, n); if(!p) throw “No
- 4. Преобразования типов Синтаксис: 1) тип (выражение); 2) (тип) выражение; Примеры: const char* p = “asdf”; int
- 5. const_cast Синтаксис: const_cast (выражение); Выражение: константный указатель Тип: тот же что и тип выражения но без
- 6. dynamic_cast 1 Синтаксис: dynamic_cast (выражение); Выражение: указатель или ссылка на класс Тип: базовый или производный от
- 7. dynamic_cast 2 Примеры: // понижающее преобразование (downcast) 1) class A { }; class B : public
- 8. dynamic_cast 3 Пример: // понижающее преобразование (downcast) #include class B { public: virtual void Test(); };
- 9. dynamic_cast 4 Пример: // перекрёстное преобразование (crosscast) class A { public: virtual void Test() {} };
- 10. dynamic_cast 5 Пример: // перекрёстное преобразование (crosscast) class B { public: virtual void Test1() {} };
- 11. static_cast 1 Синтаксис: static_cast (выражение); Выражение: целые, вещественные, перечисляемые типы; указатели и ссылки в одной иерархии
- 12. static_cast 2 Примеры: class B { }; class C: public B { }; 1) C c;
- 13. reinterpret_cast Синтаксис: reinterpret_cast (выражение); Выражение: любое Тип: любой Возвращаемое значение: переменная типа ‘тип’ Примеры: char* p
- 14. typeid Синтаксис: 1) typeid(тип); 2) typeid(выражение); Примеры: #include class B { public: virtual void Test(){ }
- 16. Скачать презентацию