0

我有一个 C++ 结构,我想在 C# 代码中反映它(遍历所有字段并以特定顺序启动),我想将结构内存作为二进制数据转储到文件中。如果我声明 int dummy_4[10] 编译器会引发无法混合托管和非托管类型的错误,那么我在结构中的数组声明中会遇到问题。如果我将数组作为数组等...并在构造函数中初始化数组,则数组不会在内存中的 dummy_3 之后定位,我无法将其转储到文件中。

需要一些想法如何解决它。谢谢

public ref struct Dummy_t
{
    int dummy_1;
    int dummy_2;
    int dummy_3;
//int dummy_4[2];  X compile error mix managed and unmanaged types
    array<int>^ dummy_4; 
    int dummy_5;
    Dummy_t()
    {
 dummy_4 = gcnew array<uint8_t>(2);
    }

};
4

1 回答 1

0

您可以在 中编写自定义转储方法Dummy_t,该方法负责处理dummy_4并输出指向的数组中的值。

于 2010-02-22T10:14:35.440 回答