получение ссылки на себя при использовании boost ::python

Я пытаюсь перенести класс Python на C++ с помощью boost ::python в надежде ускорить выполнение приложения Python (класс, который я переношу на C++, отвечает за ~30% выполнения приложений время ).

Инициализация исходного класса Python выглядит как:

class PyClass(object):
    def __init__(self, child):
        child.set_parent(self)
       ...

Как воспроизвести это в конструкторе С++?

если у меня есть класс C++:

class CClass
{
    // to get input args that match the Python class I need
    CClass(boost::python::object &child)
    {
         // but how do I get the boost::python::object self
         // as I only have *this in C++ ?
         CClass& c = boost::python::extract<CClass&>(child);
         c.set_parent(self);
    }

   ...
}

Спасибо, Марк

5
задан user1589028 10 August 2012 в 01:01
поделиться