4.5 Как Создать Библиотеку
4.5 Как Создать Библиотеку
Фразы типа «помещен в библиотеку» и «ищется в какой-то библиотеке» используются часто (и в этой книге, и в других), но что это означает для С++ программы? К сожалению, ответ звисит от того, какая операционная система используется; в этом разделе объясняется, как создать библиотеку в 8-ой весии системы UNIX. Другие системы предоставляют аналогичные возможности.
Библиотека в своей основе является множеством .o файлов, полученных в результате компиляции соответствующего множества .c файлов. Обычно имеется один или более .h файлов, в которых содержатся описания для использования этих .o файлов. В кчестве примера рассмотрим случай, когда нам надо задать (обычным способом) набор математических функций для некоторго неопределенного множества пользователей. Заголовочный файл мог бы выглядеть примерно так:
extern double sqrt(double); // подмножество «math.h» extern double sin(double); extern double cos(double); extern double exp(double); extern double log(double);
а определения этих функций хранились бы, соответственно, в файлах sqrt.c, sin.c, cos.c, exp.c и log.c.
Библиотеку с именем math.h можно создать, например, так:
$ CC -c sqrt.c sin.c cos.c exp.c log.c $ ar cr math.a sqrt.o sin.o cos.o exp.o log.o $ ranlib math.a
Вначале исходные файлы компилируются в эквивалентные им объектные файлы. Затем используется команда ar, чтобы создать архив с именем math.a. И, наконец, этот архив индексируется для ускорения доступа. Если в вашей системе нет ranlib комады, значит она вам, вероятно, не понадобится. Подробности посмотрите, пожалуйста, в вашем руководстве в разделе под зголовком ar. Использовать библиотеку можно, например, так:
$ CC myprog.c math.a
Теперь разберемся, в чем же преимущества использования math.a перед просто непосредственным использованием .o фалов? Например:
$ CC myprog.c sqrt.o sin.o cos.o exp.o log.o
Для большинства программ определить правильный набор .o файлов, несомненно, непросто. В приведенном выше примере они включались все, но если функции в myprog.c вызывают только функции sqrt() и cos(), то кажется, что будет достаточно
$ CC myprog.c sqrt.o cos.o
Но это не так, поскольку cos.c использует sin.c.
Компоновщик, вызываемый командой CC для обработки .a файла (в данном случае, файла math.a) знает, как из того мнжества, которое использовалось для создания .a файла, извлечь только необходимые .o файлы.
Другими словами, используя библиотеку можно включать много определений с помощью одного имени (включения определний функций и переменных, используемых внутренними функциями,
никогда не видны пользователю), и, кроме того, обеспечить, что в результате в программу будет включено минимальное колчество определений.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Создаем мультимедиа-библиотеку
Создаем мультимедиа-библиотеку Правильнее было бы сказать – фонотеку. Или видеотеку. Или даже фототеку, поскольку Windows Media Player одинаково успешно справляется практически со всеми видами мультимедийной информации. А вот с книжками работать не умеет. Впрочем, суть остается
Как же создать такую систему?
Как же создать такую систему? Когда вы еще новичок и начинаете создавать свой инфобизнес, тогда ваш путь – обучение.Сейчас очень много разнообразных обучающих курсов, тренингов, вебинаров, семинаров.Здесь вас научат, как сделать первые продажи в инфобизнесе, как продать
5. Создать бесплатное видео
5. Создать бесплатное видео Создайте бесплатное видео по вашей теме. Проведите бесплатную лекцию и сделайте из этого страницу подписки, чтобы вы могли раскручивать ее как приманку на Яндексе и с помощью партнерской программы – чтобы люди подписывались и покупали по
Создать
Создать В эту группу входят следующие кнопки. Конверты. Позволяет создать и распечатать шаблон конверта. Чтобы долго не объяснять, посмотрите на Образец на вкладке Конверты в окне Конверты и наклейки, которое открывается при нажатии этой кнопки (рис. 1.102). От вас
Создать
Создать Хотите создать новый файл? Выполняйте самую первую команду! Откроется окно, в котором оранжевым цветом будет выделен значок Новый документ. Это именно то, что нам нужно. Справа внизу нажимаем кнопочку Создать, и в отдельном окне сразу же появится чистый бланк
Как программно создать ярлык?
Как программно создать ярлык? uses ShlObj, ComObj, ActiveX;procedure CreateLink(const PathObj, PathLink, Desc, Param: string);var IObject: IUnknown; SLink: IShellLink; PFile: IPersistFile;begin IObject := CreateComObject(CLSID_ShellLink); SLink := IObject as IShellLink; PFile := IObject as IPersistFile; with SLink do begin SetArguments(PChar(Param)); SetDescription(PChar(Desc)); SetPath(PChar(PathObj)); end; PFile.Save(PWChar(WideString(PathLink)),
5 Добавление книг в библиотеку
5 Добавление книг в библиотеку Для пополнения базы новыми книгами существует команда «Библиотека» «Добавить книгу». Или нажать кнопку в панели инструментов. Появится окно для добавления книг из файлов. В верхней строчке панели «Найденные файлы» нужно указать каталог,
Ссылки на библиотеку Microsoft Scripting Runtime
Ссылки на библиотеку Microsoft Scripting Runtime Основные средства, необходимые для работы с файлами как с объектами, обеспечиваются объектной библиотекой Microsoft Scripting Runtime. Прежде чем создавать относящийся к файлам программный код, в VBA-проект нужно добавить ссылку на эту библиотеку.
Как создать презентацию без шаблона
Как создать презентацию без шаблона Чтобы создать новую презентацию, запустите программу и выполните в меню Кнопки «Office» команду Создать либо нажмите комбинацию клавиш Ctrl+N. Далее выполните примерно следующий порядок действий (примерно – потому что каждую презентацию
ДОСТУП В БИБЛИОТЕКУ ЯЗЫКА СИ
ДОСТУП В БИБЛИОТЕКУ ЯЗЫКА СИ Получение доступа к библиотеке зависит от системы, поэтому вам нужно посмотреть в своей системе, как применять наиболее распространенные операторы. Во-первых, есть несколько различных мест расположения библиотечных функций. Например,
Как создать новый PGP диск.
Как создать новый PGP диск. 1. Запустите программу PGPdisk2. Исполните команду New, после чего на экране появится мастер создания PGP диска.3. Нажмите на next.4. Появится окошко создания PGP диска, в котором необходимо указать путь, где новый диск под названием <New PGPdisk> надо
Как создать домашнюю группу?
Как создать домашнюю группу? Самый простой способ настроить общий доступ к файлам и принтерам — организовать домашнюю группу.Один из компьютеров домашнюю группу создает, а остальные к ней присоединяются. Создадим домашнюю группу, например, на настольном компьютере.1. В
Как создать документ?
Как создать документ? Веб-приложение Google Документы позволяет создавать такие же документы, как и приложения Microsoft Office: документы, таблицы, презентации. Работу с документом Microsoft Word мы уже разобрали. Теперь рассмотрим создание документа на примере электронной таблицы.На
Добавление файлов в библиотеку
Добавление файлов в библиотеку Проигрыватель автоматически проверяет содержимое папок Изображения, Музыка, Видео текущего пользователя и аналогичных папок из каталога Общие. Все найденные в этих папках файлы мультимедиа автоматически добавляются в библиотеку и