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

Why is my automatic to-python conversion not being found?

Boost , Boost.Python , Chapter 4. Frequently Asked Questions (FAQs)

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

Найл Дуглас приводит следующие примечания:

Если вы определите пользовательские преобразователи, подобные тем, которые показаны выше, функции<def_readonly()>и<def_readwrite()>, предоставляемые<boost::python::class_>для прямого доступа к вашим данным, не будут работать, как ожидалось. Это потому, что<def_readonly("bar",&foo::bar)>эквивалентно:

.add_property("bar", make_getter(&foo::bar, return_internal_reference()))

Точно так же<def_readwrite("bar",&foo::bar)>эквивалентно:

.add_property("bar", make_getter(&foo::bar, return_internal_reference()),
                   make_setter(&foo::bar, return_internal_reference())

Для определения политики возвратной стоимости, совместимой с пользовательскими конверсиями, заменяют<def_readonly()>и<def_readwrite()>на<add_property()>. Например:

.add_property("bar", make_getter(&foo::bar, return_value_policy<return_by_value>()),
                   make_setter(&foo::bar, return_value_policy<return_by_value>()))

PrevUpHomeNext

Статья Why is my automatic to-python conversion not being found? раздела Boost.Python Chapter 4. Frequently Asked Questions (FAQs) может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: Chapter 4. Frequently Asked Questions (FAQs) ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 20:45:39/0.027588129043579/1