Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 封送字节到枚举_C++_Vb.net_Enums_Marshalling - Fatal编程技术网

C++ 封送字节到枚举

C++ 封送字节到枚举,c++,vb.net,enums,marshalling,C++,Vb.net,Enums,Marshalling,因此,我使用Marshal类将非托管结构解析为托管结构。到目前为止,除了我正在努力将非托管字符转换为托管枚举类型这一事实之外,一切都按预期进行 例如: 未更改管理的公共结构 公共_Enum作为ManagedCustomEnum 端部结构 公共枚举管理自定义项 价值1 价值2 价值3 价值4 价值等 结束枚举 这会产生错误:Unvalid组合 如果我只是简单地删除,那么除了结构其余部分的索引关闭之外,解析工作正常,给出了未验证的值 尝试了很多可能性,也阅读了所有的MSDN文章,但仍然没有运气

因此,我使用Marshal类将非托管结构解析为托管结构。到目前为止,除了我正在努力将非托管字符转换为托管枚举类型这一事实之外,一切都按预期进行

例如:


未更改管理的公共结构
公共_Enum作为ManagedCustomEnum
端部结构
公共枚举管理自定义项
价值1
价值2
价值3
价值4
价值等
结束枚举
这会产生错误:
Unvalid组合

如果我只是简单地删除
,那么除了结构其余部分的索引关闭之外,解析工作正常,给出了未验证的值

尝试了很多可能性,也阅读了所有的MSDN文章,但仍然没有运气


希望有人能给我指出正确的方向。

一个
Enum
有一个默认的底层类型
Int32
。您必须在声明中将其更改为
Byte

Public Enum ManagedCustomEnum作为字节
价值1
价值2
价值3
价值4
价值等
结束枚举

正是我想要的,有时候比你想象的要简单:-)