Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Обработка растровых изображений




Во-первых, см. главу 11 [1] .

Во-вторых, см. проект DibLook в примерах (samples) MSDN (версия 6.0). В этом проекте показано, в частности, как можно загрузить файл с изображением (.dib или .bmp) и отобразить его в отдельном окне. Главное сосредоточено в функциях CDibDoc::OnOpenDocument() и CDibView::OnDraw().

В третьих, см. проект SimpleImage в MSDN (версия 2005), где иллюстрируется загрузка, сохранение, изменение размеров и преобразование изображений.

 



Обработка исключительных ситуаций

Не могу удержаться, чтобы не протицитировать Д. Элджера [4].

 

Если ваши программы всегда работают без малейших проблем, можете смело пропустить этот раздел. А если нет — давайте поговорим о том, как обрабатывать исключения.

Базовый принцип, на котором основана обработка исключений, — восстановление состояния и выбор альтернативных действий в случае ошибки. Предположим, в вашей программе имеется некий блок и вы не уверены, что он доработает до конца. При выполнении блока может возникнуть нехватка памяти, или начнутся проблемы с коммуникациями, или нехороший клиентский объект передаст неверный параметр. Разве не хотелось бы написать программу в таком виде:

If (блок будет работать)

{

выполнение блока;

}

Else

{

сделать что-то другое;

}

 

Иначе говоря, вы заглядываете в хрустальный шар. Если в нем виден фрагмент программы, который горит синим пламенем, вы изменяете будущее и обходите этот фрагмент. Не стоит с затаенным дыханием ожидать появления таких языков программирования в ближайшем будущем, но на втором месте стоит обработка исключений. С помощью исключений вы «допрашиваете» подозрительный блок. Если в нем обнаружится ошибка, компилятор поможет восстановить состояние перед выполнением блока и продолжить работу.

 

 

Мне понравилось такое рассуждение, а Вам? В подобном стиле кто-то высказался о пользе использования отладчика (debugger): если Вы бог, то Вам отладчик не нужен, а нам, простым смертным, без него обойтись очень трудно.










Последнее изменение этой страницы: 2018-04-12; просмотров: 367.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...