В той отрасли, где мы работаем, библиотека DirectDraw появилась довольно давно. Во всяком случае, за это время она успела доказать свои возможности, и о ней было написано несколько книг. Как обычно, эти книги отличаются по своему качеству. Однако в основном это были добротные учебники, которые (как и многие книги о компьютерах) были написаны за три месяца авторами, изучавшими предмет по ходу дела. В результате большинство этих книг содержит лишь подготовительный материал. Теперь, когда библиотека DirectDraw подросла и обрела свою репутацию (во всяком случае, она старше других компонентов DirectX), настало время уйти от основ и познакомиться с ее некоторыми нетривиальными возможностями.
Эта книга начинается с того, на чем другие книги обычно заканчивались. Мы поговорим об основах DirectDraw, но лишь в общих чертах. Читатель — опытный программист, но незнакомый с DirectDraw — сможет с ходу войти в курс дела. Затем мы перейдем к другим темам, столь же интересным, сколь и полезным.
Цель этой книги — научить вас работать с DirectDraw, а не предоставить некоторую «структурную основу» или нестандартный API, который бы выполнял за вас всю работу. Демонстрационные программы написаны на C++ и используют MFC, но совсем не для того, чтобы скрыть все технические подробности. С++ и MFC — превосходные инструменты, потому что с их помощью любое приложение можно написать несколькими разными способами. Примеры для этой книги были написаны так, чтобы при этом получались структурированные и удобные для чтения проекты, которые наглядно показывают, что и почему происходит в программе.
Помимо DirectDraw, во многих примерах используется библиотека DirectInput. Строго говоря, при программировании графики для Windows можно обойтись и без DirectInput, но ей все же стоит воспользоваться. Она работает быстрее традиционных средств ввода Windows и к тому же входит в DirectX, так что для работы с ней не потребуется никаких дополнительных SDK.
Почему люди не понимают друг друга? Почему даже самые понятные и четкие ваши аргументы или идеи вызывают иногда у других ярое сопротивление или недоверие? Как сделать так, чтобы ваши доводы были услышаны и приняты?
С несогласием, возражениями и вопросами мы встречаемся постоянно. Мы слышим их от клиентов и партнеров по бизнесу, от друзей и знакомых, от родных и близких. Иногда мы не знаем, что и как сделать, чтобы нас поняли и приняли нашу точку зрения.
Книга адресована тем, кто по роду своей деятельности постоянно находится в контакте с людьми: продавцам, менеджерам, руководителям различного ранга, психологам, бизнес-консультантам, тренерам и всем, кто хотел бы быть более успешным в бизнесе и жизни. Здесь вы найдете множество идей превращения «нет» в «да».
Эта функция позволяет конвертировать GMP-число в целое.
Предупреждение!
Эта функция возвращает пригодный для использования результат только в том
случае, если число действительно соответствует целому числу PHP (т.е. тип long
со знаком). Если вы хотите просто напечатать GMP-число, используйте gmp_strval().