" struct"之间的区别和"价值结构"

时间:2014-12-06 01:34:50

标签: c++-cli

之间有什么区别
public struct X{
public:
    int A;};

public value struct X{
public:
    int A;};

如何将一个转换为另一个?

1 个答案:

答案 0 :(得分:5)

第一个是普通的C ++结构。

使用value struct创建C ++ / CLI值类型(.NET结构)。您通常希望手动从一个副本复制到另一个,但如果内存布局相同,您通常可以使用Marshal::PtrToStructure之类的内容直接复制数据。请注意,这会返回一个装箱的value struct,因此手动复制通常会更有效。