c++的bool类型与c#的bool类型


本来有点懒,不过还是记一下。

使用HPSocket项目碰到C#调用结果不符合预期,也提了这个问题

最终发现是c++中的bool类型为1 byte,而c#中采用4 bytes导致,需要在DllImport时,使用

[DllImport(HPSOCKET_DLL_PATH, CharSet = CharSet.Ansi, SetLastError = true)]
[return:MarshalAs(UnmanagedType.I1)]
public static extern bool HP_Server_HasStarted(IntPtr pServer);

额外处理返回值。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM