Новые книги

Очень мало людей понимают, как правильно использовать для бизнеса социальные сети. Между тем это мощный и практически бесплатный инструмент, позволяющий собрать вокруг компании сотни тысяч друзей и получать в месяц до миллиона контактов с реальными и потенциальными клиентами. Потребуется лишь немного времени на создание страницы компании в Facebook и «Вконтакте», дисциплинированность в поддержке коммуникации с ее посетителями и выполнение ряда рекомендаций, которые вы и найдете в этом издании. Автор уже «наступил на грабли» за вас и расскажет об ошибках и удачных решениях.

Эта книга будет наиболее полезной для маркетологов, PR-специалистов, предпринимателей. А также для тех, кто хочет понять, как социальные сети помогают бизнесу.
В той отрасли, где мы работаем, библиотека DirectDraw появилась довольно давно. Во всяком случае, за это время она успела доказать свои возможности, и о ней было написано несколько книг. Как обычно, эти книги отличаются по своему качеству. Однако в основном это были добротные учебники, которые (как и многие книги о компьютерах) были написаны за три месяца авторами, изучавшими предмет по ходу дела. В результате большинство этих книг содержит лишь подготовительный материал. Теперь, когда библиотека DirectDraw подросла и обрела свою репутацию (во всяком случае, она старше других компонентов DirectX), настало время уйти от основ и познакомиться с ее некоторыми нетривиальными возможностями.

Эта книга начинается с того, на чем другие книги обычно заканчивались. Мы поговорим об основах DirectDraw, но лишь в общих чертах. Читатель — опытный программист, но незнакомый с DirectDraw — сможет с ходу войти в курс дела. Затем мы перейдем к другим темам, столь же интересным, сколь и полезным.

Цель этой книги — научить вас работать с DirectDraw, а не предоставить некоторую «структурную основу» или нестандартный API, который бы выполнял за вас всю работу. Демонстрационные программы написаны на C++ и используют MFC, но совсем не для того, чтобы скрыть все технические подробности. С++ и MFC — превосходные инструменты, потому что с их помощью любое приложение можно написать несколькими разными способами. Примеры для этой книги были написаны так, чтобы при этом получались структурированные и удобные для чтения проекты, которые наглядно показывают, что и почему происходит в программе.

Помимо DirectDraw, во многих примерах используется библиотека DirectInput. Строго говоря, при программировании графики для Windows можно обойтись и без DirectInput, но ей все же стоит воспользоваться. Она работает быстрее традиционных средств ввода Windows и к тому же входит в DirectX, так что для работы с ней не потребуется никаких дополнительных SDK.

Объекты

Учебник РНР
НазадГлава 34. Создание Переменных Вперёд

Объекты

Поскольку объекты могут конвертироваться в массивы (и наоборот), вы могли уже догадаться, что они имеют много общего с массивами PHP. Объекты обслуживаются теми же самыми хэш-функциями, но для из создания существует другой API.

Для инициализации объекта вы используете функцию object_init():

zval *new_object;

MAKE_STD_ZVAL(new_object);

if(object_init(new_object) != SUCCESS)
{
    // здесь обработка ошибок
}

Вы можете использовать функцию, описанную в Таблице 9.11, для добавления членов в ваши объекты.

Рисунок 34-8. Таблица 9.11. Zend API для создания объектов
Примечание: Все функции в Таблице 9.11 работают с объектом "object"
с ключом "key". Этот key образует имя члена, поэтому доступ к
результирующему члену может быть получен как $object->key.

ФункцияОписание
add_property_long(zval *object, char *key, longl);() Добавляет long к объекту.
add_property_unset(zval *object, char*key);()Добавляет свойство unset к объекту.
add_property_bool(zval *object, char *key, intb);() Добавляет Boolean к объекту.
add_property_resource(zval *object, char *key,
long r);()
Добавляет ресурс к объекту.
add_property_double(zval *object, char *key, double d);() Добавляет double к объекту.
add_property_string(zval *object, char *key,
char *str, int duplicate);()
Добавляет строку к объекту.
add_property_stringl(zval *object, char *key,
char *str, uint length, int duplicate);()
Добавляет строку специфицированной длины к объекту. Эта функция быстрее, чем add_property_string(), а также безопасна в двоичном режиме.
add_property_zval(zval *obect, char *key,
zval *container):()
Добавляет zval-контейнер к объекту. Это используется, если вы должны добавлять свойства, являющиеся не простыми типами вроде целых чисел или строк, а массивами или другими объектами.

Назад Оглавление Вперёд
Массивы Вверх Ресурсы