对于我的工作,我需要在python中使用这个C ++函数。
std::vector<std::string> pinCertificate(const std::vector<uint8_t>& certificate, bool local)
我已经在Cython
中将原型翻译成了这个vector[string] pinCertificate(const vector[uint8_t]& certificate, const boolean& local)
但是当我尝试使用它时,真正的问题就来了。我总是得到以下错误,或者是段错误。
TypeError: an integer is required
以下是我调用函数的方法:
# cert_id is a simple string
certificate = [np.uint8(x) for x in list(cert_id.encode())]
result = self.dring.config.pin_certificate(certificate, local)
我不知道为什么会崩溃,证书只包含numpy.uint8
。
我做错了什么吗?提前谢谢。
答案 0 :(得分:-1)
好吧,问题似乎来自我的内部C ++代码。