.net - .net枚举是可blittable类型吗? (编码)

标签 .net enums pinvoke marshalling

显然这里有一个blittable类型的列表,到目前为止,我还没有看到专门针对Enums的列表。它们总体上可漂白吗?还是取决于它们是否使用可漂白基类型声明?

//e.g.
internal enum SERVERCALL : uint
{
    IsHandled = 0,
    Rejected = 1,
    RetryLater = 2,
}

引用文献用尽:
  • "Blittable and Non-Blittable Types"
  • "Default Marshaling for Value Types"
  • 最佳答案

    枚举是可漂白的类型。从 enum keyword documentation:

    Every enumeration type has an underlying type, which can be any integral type except char.



    因为基础类型是整数(所有这些类型都在可Blittable类型的列表中),所以枚举也是可Blittable的。

    关于.net - .net枚举是可blittable类型吗? (编码),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5584160/

    相关文章:

    java - java中数据库字典的最佳实践

    C# Marshal/Pinvoke CBitmap?

    c# - .NET 接口(interface)允许从非派生类型进行隐式转换

    .net - 限制 Windows .NET 服务的 CPU 使用率

    c# - 这个 RestClient JSON POST 的等效 HttpClient JSON POST 是什么?

    c# - 如何将字符串设置为枚举变量?

    swift - 在 Swift 中是否存在 Enum.GetName(Type,‖Object) 方法的替代方法?

    visual-studio - Visual Studio 单元测试未使用 PInvoke 找到我的 DLL。我怎样才能解决这个问题?

    c# - 具有部分已知标题的 FindWindow

    c# - 对 WCF 调用进行单元测试,是否可能以及如何进行?