Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript C+中的无符号短*和wchar#t错误+;_Javascript_C++_C - Fatal编程技术网

Javascript C+中的无符号短*和wchar#t错误+;

Javascript C+中的无符号短*和wchar#t错误+;,javascript,c++,c,Javascript,C++,C,我使用VS2008为Fljs制作一个C++ DLL,它是Adobe Flash使用的JS。 hell函数需要一个arg,其类型为unsigned short*,用于js中的register函数名 我使用这个示例成功地在js中执行了一些简单的操作。它通过了参数use\u T(“functionname”) 但是,样本是C代码。当我使用C++代码(只是改变.c到.cp),VS告诉我 WCARGYT是内部类型,所以我关闭选项,现在 WCARGYT是无符号短的Type。 然后编译它,没有错误。但是在js

我使用VS2008为Fljs制作一个C++ DLL,它是Adobe Flash使用的JS。 hell函数需要一个arg,其类型为
unsigned short*
,用于js中的register函数名

我使用这个示例成功地在js中执行了一些简单的操作。它通过了参数use
\u T(“functionname”)

但是,样本是C代码。当我使用C++代码(只是改变.c到.cp),VS告诉我<代码> WCARGYT是内部类型,所以我关闭选项,现在 WCARGYT是无符号短的Type。

然后编译它,没有错误。但是在js中,它找不到函数名

所以我想知道为什么js找不到这个名字?
在C和C++中, WCARGYTT < /CUT>(C和C++ +

< P>)中的“代码>未签名短代码/代码>的Type都很有可能。如果您切换到C++,并且不将导出函数标记为C样式,那么您的函数名称很可能被损坏。

你可以在上面看到一个解释

你可以试着让他们再次成为C

extern "C" {  // only need to export C interface if

__declspec( dllimport ) void MyCFunc();

};

也许函数的名称被修改了,所以你可以把它作为C函数找到,但不是C++。我在VS调试中看到了这个值是完整的。但是登记函数是在Flash和Flash中登记的,我不知道它的实现。如果这个名字被导出错误,FLAHS就找不到它。在调试器中,您看不到这一点,因为调试器知道如何将其解纠缠。OYuo必须使用一个工具查看它,该工具可以向您显示导出的符号。如果这有帮助的话,试着看看你是否将函数解释为C。我已经解决了我的问题!FC++只是登记登记功能,不需要注册C++功能,不需要代码> y*DEXSPEC(DLLIMPORT)< /C>来导出函数,但是我使用C++代码>外部“C”< /代码>,以便我可以用C函数调用它,我可以顺利登记。谢谢!