Суббота, 18.05.2024, 15:09Приветствую Вас Гость | RSS
IT Solutions
Меню сайта
Наш опрос
Оцените мой сайт
Всего ответов: 407
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Каталог статей


Главная » Статьи » Мои статьи

Безопасное перекрытие виртуальных функций
1. При перекрытии виртуальных функций сохраняйте заменимость.
  • Обратите внимание на пред- и постусловия в базовом классе.
2. Не изменяйте аргументы по умолчанию виртуальных функций.

3. Явно указывайте перекрываемые функции как виртуальные

4. Не забывайте о сокрытии перегруженных функций в базовом классе.


При корректном наследовании производный класс моделирует частный случай более общей базовой концепции.

Определение в производном классе перекрытия, которое может быть не успешным 
( генерировать исключения), будет корректно только лишь если в базовом классе не объявлено, что данная операция всегда успешна.

Не изменяйте аргумент по умолчанию при перекрытии:
  • Он не является частью сигнатуры функции и клиентский код будет невольно передавать различные аргументы в функцию ( в зависимости от того, какой узел иерархии обращается  к ней)


Перекрытие может скрывать перегруженные функции из базового класса:


Если перегруженные функции из базового класса должны быть видно - воспользуетесь "using" в производном классе:

Категория: Мои статьи | Добавил: B@R_LOG (18.11.2013)
Просмотров: 903 | Теги: безопасное перекрытие виртуальных ф, virtial C++ | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Категории раздела
Мои статьи [11]
Поиск
Друзья сайта
  • МЫ в "ВКонтакте"
  • Система Orphus