• Пожаловаться

Алекс Jenter: Программирование на Visual C++. Архив рассылки

Здесь есть возможность читать онлайн «Алекс Jenter: Программирование на Visual C++. Архив рассылки» весь текст электронной книги совершенно бесплатно (целиком полную версию). В некоторых случаях присутствует краткое содержание. категория: Программирование / на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале. Библиотека «Либ Кат» — LibCat.ru создана для любителей полистать хорошую книжку и предлагает широкий выбор жанров:

любовные романы фантастика и фэнтези приключения детективы и триллеры эротика документальные научные юмористические анекдоты о бизнесе проза детские сказки о религиии новинки православные старинные про компьютеры программирование на английском домоводство поэзия

Выбрав категорию по душе Вы сможете найти действительно стоящие книги и насладиться погружением в мир воображения, прочувствовать переживания героев или узнать для себя что-то новое, совершить внутреннее открытие. Подробная информация для ознакомления по текущему запросу представлена ниже:

libcat.ru: книга без обложки

Программирование на Visual C++. Архив рассылки: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Программирование на Visual C++. Архив рассылки»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

РАССЫЛКА ЯВЛЯЕТСЯ ЧАСТЬЮ , НА САЙТЕ КОТОРОГО ВСЕГДА МОЖНО НАЙТИ ВСЮ НЕОБХОДИМУЮ РАЗРАБОТЧИКУ ИНФОРМАЦИЮ, СТАТЬИ, ФОРУМЫ, РЕСУРСЫ, ПОЛНЫЙ АРХИВ ПРЕДЫДУЩИХ ВЫПУСКОВ РАССЫЛКИ И МНОГОЕ ДРУГОЕ.

Алекс Jenter: другие книги автора


Кто написал Программирование на Visual C++. Архив рассылки? Узнайте фамилию, как зовут автора книги и список всех его произведений по сериям.

Программирование на Visual C++. Архив рассылки — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Программирование на Visual C++. Архив рассылки», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать

void CMyObject::Serialize(CArchive ar) {

CObject::Serialize(ar); // вызываем версию базового класса

if (ar.IsStoring()) // если сохраняем,

{

ar << something; // то сохранить что-то

} else // а иначе

{

ar >> something; // восстановить

}

}

Заметьте, что DECLARE_SERIAL|IMPLEMENT_SERIAL помимо сериализации включают и те возможности, которые дают две первые пары — это естественно, ведь если вы восстанавливаете объект, то вам понадобится возможность создать его во время выполнения программы. Например, приложению нужно сохранять и восстанавливать некоторый набор объектов различного типа. А для вызова соответствующего конструктора при восстановлении объекта нужно знать его тип. Механизм сериализации сохраняет информацию об объекте вместе с теми данными, что вы записываете явно в функции Serialize().

ВОПРОС – ОТВЕТ

Следующий вопрос поступил от одного из подписчиков:

Q При программировании элементов ActiveX, в этой технологии есть возможность структурного хранения данных на диске, т.е. создание в файле так называемых хранилищ и потоков (использование интерфейсов IStream и IStorage), проще говоря – представление файла данных в виде иерархической системы внутренних каталогов и файлов, которые там (в данном файле данных) имеют свои строковые имена. Есть ли в MFC возможность структурного хранения, скажем, используя объект класса CArchive в переопределяемой функции Serialize(CArchive) класса, производного от CDocument, ну и так далее? Конечно, этого можно добиться, создав свои собственные наработки (а как хороша эта идея, я имею в виду использование потоков и хранилищ), но все таки хочется знать, есть ли такие возможности в MFC, чтобы не тратить зря время.

Броник ( krivoruchko@nvrsk.ru)

A Насколько мне известно, поддержки такой иерархической системы в MFC нет. Во всяком случае, я ее не обнаружил. CArchive и Serialize для этой цели явно не предназначены: в них важную роль играет последовательность записи, т.е. в каком порядке вы что-то записали, в таком нужно это и прочитать. Так что, скорее всего, придется писать свой класс для этой цели. Конечно, это не слишком обнадеживает, но зато этот класс можно будет использовать во всех дальнейших программах, где потребуется такая форма хранения данных. Или – как вариант – можно сделать просто класс-обертку для интерфейсов IStorage и IStream. Конечно, в этом случае придется подключать библиотеку COM (которую в MFC-приложениях, в принципе, никто не запрещает использовать). Впрочем, если кто знает что-нибудь о существовании такого механизма в MFC – пожалуйста, поделитесь с нами.

Всего наилучшего и чтоб программы ваши не знали ошибок.

(C) Алекс Jenter mailto:jenter@mail.ru Красноярск, 2000.

Программирование на Visual C++

Выпуск №3 от 23/06/2000

Здравствуйте!

Да, это должно было произойти и это произошло! Рассылка получила официальный статус "обычной некоммерческой рассылки" (причем гораздо быстрее, чем я ожидал), с чем я себя и всех вас и поздравляю!

Хочу извиниться перед подписчиками HTML-версии: во втором выпуске случилось некоторое искажение исходного кода (я упустил из виду, что при автоматической генерации HTML сервер Гор. Кота звездочки (*) интерпретирует как указание сделать шрифт жирным), в результате чего были потеряны указатели. Вот как этот код должен был выглядеть на самом деле:

CRunTimeClass *pClass = RUNTIME_CLASS(СMyObject);

// получаем ук-ль на структуру CRunTimeClass

CObject *pNewObject = pClass->CreateObject();

// создаем новый объект нужного класса

ASSERT(pNewObject->IsKindOf(RUNTIME_CLASS(CMyObject));

// проверяем класс объекта

Меня удивило, что большинство из вас подписывается именно на HTML – я думал, наши люди как никакие другие считают каждый килобайт. Но, видимо, времена меняются – в лучшую сторону. Дай бог! Так что по вышеописанным причинам я решил поднапрячься и сработать собственный HTML-вариант. То, что получилось, сейчас перед вами, уважаемые HTML-подписчики. Тех, кто выписывает текстовый вариант, уговаривать подписаться на HTML я не буду, потому что прекрасно их понимаю ;) Оба варианта я буду делать лично, никакой автоматической генерации. Enjoy.

ОБРАТНАЯ СВЯЗЬ

Мне пришло интересное письмо на тему предыдущего выпуска. Хочу предложить его вашему вниманию:

Приветствую!

Я только что обнаружил эту рассылку, подписался и 2 первых выпуска прочитал в архиве. Очень надеюсь, что смогу оказать посильную помощь автору и читателям рассылки, так как около 30 лет занимаюсь программированием и последние 3-4 года – Visual C++. На работе сейчас я программирую именно на этом [языке – AJ], Visual Studio 6.0

Читать дальше
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Программирование на Visual C++. Архив рассылки»

Представляем Вашему вниманию похожие книги на «Программирование на Visual C++. Архив рассылки» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё не прочитанные произведения.


Отзывы о книге «Программирование на Visual C++. Архив рассылки»

Обсуждение, отзывы о книге «Программирование на Visual C++. Архив рассылки» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.