bio*_*inc 6 c# interop struct marshalling
我正在摆弄从C#调用DLL,并且需要定义我自己的结构.很多文章强制结构的顺序布局
[StructLayout(LayoutKind.Sequential)]
struct Foo ...
Run Code Online (Sandbox Code Playgroud)
所以,我跟着套件,我的程序工作.现在,当我把线路拿出来时,它仍然可以工作.我为什么需要它?
托管结构的内部布局未记录且无法发现。成员订单和包装等实施细节被有意隐藏。使用 [StructLayout] 属性,您可以强制 P/Invoke marshaller 强加特定的布局和包装。
默认值恰好与您的代码工作所需的内容相匹配,这只是一个意外。虽然并不少见。请注意 Type.StructLayoutAttribute 属性。
| 归档时间: |
|
| 查看次数: |
3186 次 |
| 最近记录: |