Мне требуется документация/пример для расширения методов C++ в python. Я просмотрел документацию на python и некоторые существующие вопросы на форуме, но не получил точных данных.Расширение методов OO OO в python
Чтобы быть точным, если у меня есть классы, как C++:
class Manager
{
Manager *instance;
std::list<User*> userList;
Manager();
public:
User* getUser(const char* name);
static Manager* getInstance();
}
class User
{
User();
public:
void doSomething();
}
В питоне я ожидаю, чтобы сделать что-то вроде:
m = getInstance()
u=m.getuser('x')
u.doSomething()
Так что я хотел бы способ написать питона которые будут внутренне вызывать вышеуказанные методы. Я могу написать методы-обертки не объектно-ориентированным способом. то есть: я могу написать его так, чтобы я мог вызывать автономные методы как getUser ('x') и doSomething(), но не на основе объектов m.getUser ('x') и u.doSomething().
На самом деле то, что я хочу, является действительным питон оберткой для вышеприведенных C++ классов на основе. –
Тогда вы можете рассматривать «Менеджер» и «Пользователь», написанные на Python, как обертки классов, написанных на C++. Когда вы можете '' __init__' 'Manager', тогда создайте класс C++ и сохраните его в' Manager', как 'self.instance = c_plus_plus_Manager(). GetInstance()'. – hyades