擅长:python、mysql、java
<p>正如其他人所解释的,问题的版本1的问题是使用std::string,这不是一个有效的互操作类型。在</p>
<P>查看问题的第2版,C++和Python声明不匹配。C++代码返回指向结构的指针,但是Python代码期望结构由值返回。在</p>
<P>可以更改C++或Python以匹配其他。在</p>
<P> <强> C++ >强> </P>
<pre><code>DLLAPI myStruct DLLApiGetStruct()
{
myStruct result;
result.id = L"some id";
result.content = L"some content";
result.message = L"some message";
return result;
}
</code></pre>
<p><strong>Python</strong></p>
^{pr2}$
<p>显然,您必须只应用这些更改中的一个!在</p>
<P>注意,在C++代码中,我选择使用L前缀而不是γ()宏使用显式宽字符串。前者与wchar_t*匹配,后者与TCHAR一起使用。我现在不推荐TCHAR,除非你需要支持Win98。在</p>