我有一个代表有线格式数据包的结构。在这个结构中是其他结构的数组。对于大多数情况,我有通用代码可以很好地处理这个问题,但是这个结构数组的情况正在将编组器抛出一个循环。
不安全的代码是不行的,因为我无法获得指向带有数组的结构的指针(啊!)。
我可以从这篇 codeproject 文章中看到,有一种非常好的通用方法,涉及 C++/CLI,类似于...
public ref class Reader abstract sealed
    {
    public:
        generic <typename T> where T : value class
        static T Read(array<System::Byte>^ data)
        {
            T value;
            pin_ptr<System::Byte> src = &data[0];
            pin_ptr<T> dst = &value;
            memcpy((void*)dst, (void*)src,
                /*System::Runtime::InteropServices::Marshal::SizeOf(T::typeid)*/
                sizeof(T));
            return value;
        }
    };
现在,如果只有结构-> 字节数组/写入器版本,我将被设置!提前致谢!