如何在python中使用std::wstring

2024-09-24 02:28:15 发布

您现在位置:Python中文网/ 问答频道 /正文

Python调用C++函数(使用SWIG封装)。在

<强> C++:

  std::wstring getFilePathMultiByte();

我可以在python中调用这个函数。问题是如何使用这个返回的wstring?希望将文件名附加到这个路径,这将导致如下输出所示的错误。在

Python:

^{pr2}$

输出:

_2012ad3900000000_p_std__wstring, type 'SwigPyObject'
TypeError: unsupported operand type(s) for +: 'SwigPyObject' and 'str'

如何在python中创建std::wstring?这样我就可以连在一起了。在

谢谢。在


Tags: 函数路径for文件名type错误swigstd
1条回答
网友
1楼 · 发布于 2024-09-24 02:28:15

以下示例在我的机器上与swig2.0一起工作:

%module test

%include "std_wstring.i"

%inline %{
  std::wstring foo() {
    return L"hi";
  }
%}

然后我测试了:

^{pr2}$

我不太确定你在这里做错了什么——我猜你可能没有%include "std_wstring.i",但鉴于你所展示的内容,很难确定。在

相关问题 更多 >