擅长:python、mysql、java
<p>经过一番摆弄,我知道发生了什么事。你知道吗</p>
<p>函数确实已经正确地编写,正确地编译成DLL,并且ctypes.CDLL文件对象创建正确。你知道吗</p>
<p>那个ctypes.CDLL文件对象没有立即“看到”函数名,因此它不在方法列表中。我所做的就是忽略了方法不在对象的名称空间中这一事实,于是我大胆地调用了<code>_addone.addone(x)</code>。这使对象意识到函数在DLL中,并将其添加到名称空间中。你知道吗</p>
<p>我怀疑ctypes中存在一些后端,调用函数会导致它检查库中是否确实存在该名称。也许这是为了防止名称空间被编译器放入DLL的各种其他函数弄乱。你知道吗</p>