Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Function import

Boost , The Boost C++ Libraries BoostBook Documentation Subset , Reference

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Function import

boost::dll::import

Synopsis

// In header: <boost/dll/import.hpp>

template<typename T> 
  result_type import(const boost::filesystem::path & lib, const char * name, 
                     load_mode::type mode = load_mode::default_mode);
template<typename T> 
  result_type import(const boost::filesystem::path & lib, 
                     const std::string & name, 
                     load_mode::type mode = load_mode::default_mode);
template<typename T> 
  result_type import(const shared_library & lib, const char * name);
template<typename T> 
  result_type import(const shared_library & lib, const std::string & name);
template<typename T> 
  result_type import(shared_library && lib, const char * name);
template<typename T> 
  result_type import(shared_library && lib, const std::string & name);

Description

Возвращает позывной объект или усилитель::shared_ptr который содержит символ, импортированный из загруженной библиотеки. Возвращенное значение пересчитывает использование загруженной общей библиотеки, так что она не будет разгружена, пока все копии обратного значения не будут уничтожены.

Этот вызов будет успешным, если вызов boost::dll::shared_library::has(const char*) функции с тем же именем символа вернулся true.

Для импорта символов по alias используют метод boost::dll::import_alias.

Примеры:

boost::function<int(int)> f = import<int(int)>("test_lib.so", "integer_func_name");
auto f_cpp11 = import<int(int)>("test_lib.so", "integer_func_name");
boost::shared_ptr<int> i = import<int>("test_lib.so", "integer_name");

TemplateпараметрT: Тип символа, который мы собираемся импортировать. Должен быть четко указан.

Параметры:

lib

Путь к общей библиотеке или к общей библиотеке для загрузки функции.

режим

Режим, который будет использоваться при загрузке библиотеки.

name

Нулевое C или C++ искалеченное имя функции для импорта. Может обрабатывать std::string, char*, const char*.

Возврат:

вызывающий объект, если T - тип функции, или усилитель::shared_ptr< T> если T — тип объекта.

Броски:

усиление::system::system_error, если символ не существует или если DLL/DSO не был загружен. Перегрузка, которая принимает путь, также бросает std::bad_alloc в случае недостаточной памяти.

PrevUpHomeNext

Статья Function import раздела The Boost C++ Libraries BoostBook Documentation Subset Reference может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Reference ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-07-05 05:42:13/0.0036590099334717/0