![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Class template imported_classBoost , The Boost C++ Libraries BoostBook Documentation Subset , Reference
|
![]() |
Note |
---|---|
Он должен быть построен с помощью boost::dll::import_class (const smart_library& lib, std::size_t, Args...) |
imported_class
public
construct/copy/destructtemplate<typename...Args> imported_class(unspecified,constsmart_library&lib,Args...args);>
template<typename...Args> imported_class(unspecified,constsmart_library&lib,std::size_tsize, Args...args);>
template<typename...Args> imported_class(unspecified,smart_library&&lib,Args...args);>
template<typename...Args> imported_class(unspecified,smart_library&&lib,std::size_tsize, Args...args);>
imported_class()=delete;>
imported_class(imported_class&)=delete;>
imported_class(imported_class&&)=default;>Переместить конструктор.
imported_class&operator=(imported_class&)=delete;>
imported_class&operator=(imported_class&&)=default;>Перемещать ассигнования.
imported_class
public static functionstemplate<typename...Args> staticimported_class<T>make(smart_library&&lib,Args...args);>
template<typename...Args> staticimported_class<T> make(smart_library&&lib,std::size_tsize,Args...args);>
template<typename...Args> staticimported_class<T>make(constsmart_library&lib,Args...args);>
template<typename...Args> staticimported_class<T> make(constsmart_library&lib,std::size_tsize,Args...args);>
imported_class
public member functionsT*get();>Возвращает указатель на основной класс.
boolis_move_constructible();>Проверьте, является ли импортируемый класс подвижным.
boolis_move_assignable();>Проверьте, является ли импортируемый класс подвижным.
boolis_copy_constructible();>Проверьте, является ли импортируемый класс копируемым.
boolis_copy_assignable();>Проверьте, является ли импортируемый класс поддающимся копированию.
imported_class<T>copy()const;>Обратитесь к конструктору копий.
![]() | Примечание |
---|---|
Неопределенное поведение, если импортируемый объект не является копируемым. |
imported_class<T>move();>Назовите конструктор движения.
![]() | Примечание |
---|---|
Неопределенное поведение, если импортируемый объект не является конструируемым. |
voidcopy_assign(constimported_class<T>&lhs)const;>Ссылка на копию.
![]() | Примечание |
---|---|
Неопределенное поведение, если импортируемый объект не поддается копированию. |
voidmove_assign(imported_class<T>&lhs);>Призовите задание на переезд.
![]() | Примечание |
---|---|
Неопределенное поведение, если импортируемый объект не может перемещаться. |
explicitoperatorbool()const;>Проверьте, загружен ли класс.
conststd::type_info&get_type_info();>Получить ссылку на std::type_info.
template<typenameSignature>unspecifiedcall(conststd::string&name);>
Вызовите функцию члена. Это возвращает прокси к функции. Механик-посредник необходим, поэтому сигнал можно передать.
Пример
<im_class.call<void(constchar*)>("function_name")("MyString");>
template<typenameTin,typenameSignature, typename=boost::enable_if<detail::unqalified_is_same<T,Tin>>> unspecifiedcall(conststd::string&name);>
Назовите квалифицированную функцию члена, т.е. конст и или летучую.
Пример
<im_class.call<consttype_alias,void(constchar*)>("function_name")("MyString");>
template<typenameTin,typenameT2>unspecifiedoperator->*(unspecifiedmn);>Перегрузка ->* для импортного метода.
template<class...Args>unspecifiedimport(conststd::string&name);>Импортировать метод класса.
Статья Class template imported_class раздела The Boost C++ Libraries BoostBook Documentation Subset Reference может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
реклама |