У меня есть класс, который наследуется от класса boost-python:
class Magnet(CMagnet): # CMagnet is a C++ based boost-python class
def __init__(self):
CMagnet.__init__(self)
def python_method(self):
...
В реализации CMagnet на C ++ я использовал код из 1 , как указано в 2 .
Теперь у меня возникает следующая проблема: Когда я делаю следующее:
magnet = Magnet()
magnet_2 = copy.deepcopy(magnet)
затем magnet
относится к типу Magnet
, magnet_2
, но относится к типу CMagnet
. Мне нужно, чтобы это было также типа Magnet
. В нем отсутствуют все Magnet
методы. Как получить DeepCopy для копирования (и возврата) всего объекта Magnet
, а не только копии CMagnet
части?