首页 > 代码库 > Python调用C++DLL函数出错String类型问题
Python调用C++DLL函数出错String类型问题
调用c++ 函数原型如下,一直失败,请个日志断点发现 参数未能正确解析。
int EXPORT init_ner(string cfg_path);typedef int (*Proc_init_ner)(string cfg_path);int EXPORT fini_ner();typedef int (*Proc_fini_ner)();string EXPORT process(string input_jsn_str);typedef string (*Proc_process)(string input_jsn_str);
改动C++ 代码如下:
int EXPORT init_ner(const char* cfg_path);typedef int (*Proc_init_ner)(const char* cfg_path);int EXPORT fini_ner();typedef int (*Proc_fini_ner)();string EXPORT process(const char* input_jsn_str);typedef string (*Proc_process)(const char* input_jsn_str);
python如下调用 就可以成功了。
dll = windll.LoadLibrary("NER.dll")dll.init_ner("./engine_cfg/ner.cfg")
Python调用C++DLL函数出错String类型问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。