Чтение онлайн

на главную - закладки

Жанры

Графика для Windows средствами DirectDraw

Трухильо Стэн

Шрифт:

DDraw:Blt16_ColorFill(47): SUM = 716435

DDraw:Blt16_ColorFill(47): COUNT = 32

DDraw:Blt16_ColorFill(47): AVG = 22388

DDraw:Blt16_ColorFill(47): MIN = 15855

DDraw:Blt16_ColorFill(47): MAX = 55858

DDraw:Blt16_ColorFill(47): Dst MB/sec = 27

DDraw:P6SrcCopy(Bypass Blt16_SrcCopy)(88): SUM = 263495

DDraw:P6SrcCopy(Bypass Blt16_SrcCopy)(88): COUNT = 30

DDraw:P6SrcCopy(Bypass Blt16_SrcCopy)(88): AVG = 8783

DDraw:P6SrcCopy(Bypass Blt16_SrcCopy)(88): MIN = 8528

DDraw:P6SrcCopy(Bypass Blt16_SrcCopy)(88): MAX = 9917

DDraw:P6SrcCopy(Bypass Blt16_SrcCopy)(88): Dst MB/sec = 17

DDraw:Driver is now FREE

DDraw:====> ENTER: DLLMAIN(baaa12c0): Process Detach fff00c89,
tid=fff04bf1

DDraw:MemState

DDraw:Memory still allocated! Alloc count = 11

DDraw:Current Process (pid) = fff00c89

DDraw:82dc100c: dwSize=00000008, lpAddr=baaa1bbc (pid=fff1b349)

DDraw:82dc1054: dwSize=0000001d, lpAddr=baae5093 (pid=fff18e61)

DDraw:82dc1090: dwSize=00000019, lpAddr=baae5093 (pid=fff18e61)

DDraw:82dc10c8: dwSize=00000019, lpAddr=baae5093 (pid=fff18e61)

DDraw:82dc1100: dwSize=0000001d, lpAddr=baae5093 (pid=fff18e61)

DDraw:82dc113c: dwSize=00000018, lpAddr=baae5093 (pid=fff18e61)

DDraw:82dc1170: dwSize=00000019, lpAddr=baae5093 (pid=fff18e61)

DDraw:82dc11a8: dwSize=0000001c, lpAddr=baae52c8 (pid=fff18e61)

DDraw:82dc1030: dwSize=00000008, lpAddr=baaa1bbc (pid=fff04a0d)

DDraw:82dc1fc0: dwSize=00000008, lpAddr=baaa1bbc (pid=fff04a0d)

DDraw:82dc1c3c: dwSize=00000008, lpAddr=baaa1bbc (pid=fff00c89)

DDraw:Total Memory Unfreed From Current Process = 8 bytes

DDraw:====> EXIT: DLLMAIN(baaa12c0): Process Detach fff00c89

Замечания

о Visual C++ 

Как бы вы ни относились к Visual C++, приходится признать: это чрезвычайно мощный пакет. В нем объединены компилятор, компоновщик, отладчик, профайлер и редактор ресурсов — я перечислил лишь основные компоненты. С каждой новой версией он становится все больше и мощнее. Однако сказанное относилось только к C++! Сам по себе Visual C++ является интегрированным компонентом Developer Studio — многоцелевой и многоязыковой платформы разработчика, с которой мне никогда не надоедает работать.

Visual C++ тоже не стоит на месте. Хорошо это или плохо, но в него постоянно вносятся изменения, а значит — возникают новые проблемы. К тому же Microsoft иногда стремится опередить события и под давлением маркетинговых и финансовых

соображений выпускает продукты, которым полагалось бы находиться на стадии бета-тестирования. Трудно сказать, относится ли сказанное к Visual C++ 5.0. Впрочем, на момент написания книги уже существовало дополнение (service pack), исправляющее целый ряд багов. Чаще всего от ошибок страдают новые средства Visual C++ (например, говорят, что их хватает в новой библиотеке ActiveX Template Library (ATL)). К счастью, в данной книге эти новые возможности не используются.

И все же рано или поздно встреча с новшествами состоится. Одна из новых возможностей, с которыми вам неизбежно придется столкнуться, — справочная система на базе HTML. Я не понимаю, чем она лучше предыдущей. Более того, она медленнее работает, обладает меньшей маневренностью, и в довершение всех бед новые справочные файлы написаны еще хуже прежних. Правда, их можно просматривать в броузере, но я не понимаю, зачем это нужно. (Вообще, все эти нововведения начинают сильно смахивать на попытку использовать компьютер без клавиатуры).

С другой стороны, в Visual C++ появилось несколько хороших, хотя и запоздалых возможностей. Один из примеров — новые ключевые слова bool, true и false. В течение некоторого времени они уже входили в стандарт C++; хорошо, что мы наконец сможем ими пользоваться.

В этом разделе мы поговорим о Visual C++. Одни вопросы относятся к программам из этой книги, другие — ко всем проектам, написанным на Visual C++.

Прекомпилированные заголовки 

Лично я — горячий поклонник прекомпилированных заголовков. Настроить их нетрудно, а компиляция проектов Visual C++ проходит намного быстрее обычного. Если вам придется компилировать большой проект без прекомпилированных заголовков, то к концу компиляции вы успеете забыть, что же именно изменилось в вашей программе.

Одна из разрекламированных особенностей Visual C++, которую я ждал с особым нетерпением, — возможность задания параметров проекта из пользовательских AppWizard. Это позволило бы мне написать AppWizard, который помимо генерации исходных текстов мог бы настраивать конфигурацию новых проектов. Особенно сильно я рассчитывал на настройку и включение прекомпилированных заголовков.

Такая возможность была предусмотрена для стандартного MFC AppWizard из комплекта Visual C++; впрочем, она присутствовала и в предыдущих версиях. После нововведений в Visual C++ 5.0 то же самое могут (теоретически) сделать и разработчики нестандартных AppWizard.

Первая проблема состоит в том, что справка, документирующая эту новую возможность, была написана для Visual Basic и потому оказалась практически бесполезной для программистов на C++ (несомненно, мы имеем дело с побочным эффектом многоязыковой ориентации Developer Studio). Вторая проблема — в том, что (в соответствии с документацией) уровень доступа, необходимый для оптимальной конфигурации прекомпилированных заголовков, вам не предоставляется. Выяснилось, что с проектами можно работать на уровне конфигураций, но не на уровне файлов. До меня доходили слухи, что такая возможность все-таки есть, но она не документирована; однако мои поиски в заголовочных файлах ни к чему не привели.

Поделиться:
Популярные книги

Темный Лекарь 7

Токсик Саша
7. Темный Лекарь
Фантастика:
попаданцы
аниме
фэнтези
5.75
рейтинг книги
Темный Лекарь 7

Неласковый отбор Золушки-2. Печать демонов

Волкова Светлана
2. Попала в сказку
Любовные романы:
любовно-фантастические романы
7.29
рейтинг книги
Неласковый отбор Золушки-2. Печать демонов

Ученье – свет, а богов тьма

Жукова Юлия Борисовна
4. Замуж с осложнениями
Фантастика:
социально-философская фантастика
юмористическая фантастика
космическая фантастика
9.37
рейтинг книги
Ученье – свет, а богов тьма

Попаданка в деле, или Ваш любимый доктор - 2

Марей Соня
2. Попаданка в деле, или Ваш любимый доктор
Любовные романы:
любовно-фантастические романы
7.43
рейтинг книги
Попаданка в деле, или Ваш любимый доктор - 2

Чужбина

Седой Василий
2. Дворянская кровь
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Чужбина

Камень Книга седьмая

Минин Станислав
7. Камень
Фантастика:
фэнтези
боевая фантастика
6.22
рейтинг книги
Камень Книга седьмая

Курсант: назад в СССР

Дамиров Рафаэль
1. Курсант
Фантастика:
попаданцы
альтернативная история
7.33
рейтинг книги
Курсант: назад в СССР

Хозяйка лавандовой долины

Скор Элен
2. Хозяйка своей судьбы
Любовные романы:
любовно-фантастические романы
6.25
рейтинг книги
Хозяйка лавандовой долины

На Ларэде

Кронос Александр
3. Лэрн
Фантастика:
фэнтези
героическая фантастика
стимпанк
5.00
рейтинг книги
На Ларэде

Город Богов 2

Парсиев Дмитрий
2. Профсоюз водителей грузовых драконов
Фантастика:
юмористическое фэнтези
городское фэнтези
попаданцы
5.00
рейтинг книги
Город Богов 2

Идеальный мир для Лекаря 23

Сапфир Олег
23. Лекарь
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 23

Царь Федор. Трилогия

Злотников Роман Валерьевич
Царь Федор
Фантастика:
альтернативная история
8.68
рейтинг книги
Царь Федор. Трилогия

На границе империй. Том 7

INDIGO
7. Фортуна дама переменчивая
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
6.75
рейтинг книги
На границе империй. Том 7

Попаданка

Ахминеева Нина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Попаданка