我正在学习C ++ / CLI并遇到问题。 我有一个看起来像
的头文件 typedef struct _DATA_INFO {
WORD ONE
WORD TWO
WORD THREE
} DATA_INFO
public ref class ManagedDataInfo
{
DATA_INFO* info;
public ManagedDataInfo()
{
info=new DATA_INFO();
}
public void Write(Stream^ stream)
{
// stream.Write(content of info)
// here i want to write content of info to stream
}
}
在这里,我想将信息的内容复制到Write方法中的流中,但仍然坚持如何做到这一点。
答案 0 :(得分:2)
您需要这种方法:Marshal.StructureToPtr。此方法将结构转换为字节序列。然后你可以使用Stream.Write方法之一编写。
答案 1 :(得分:1)
Stream提供了一系列字节的通用视图。 这意味着您需要将info对象序列化为一系列字节。 使字节数组使用Marshal.Copy方法。 希望这会有所帮助。