枚举的discriminator和variable赋值

💡 原文中文,约1300字,阅读约需3分钟。
📝

内容提要

这篇文章讨论了Rust编程语言中枚举变体的序列号自定义问题。作者提到在定义枚举时需要加上`#[repr(inttype)]`或`#[repr(u8)]`才能通过编译。作者还提到了另外两个枚举的例子,其中一个没有加上`#[repr]`也可以正常运行。作者对结果为96的情况感到困惑。

🎯

关键要点

  • 文章讨论了Rust编程语言中枚举变体的序列号自定义问题。
  • 定义枚举时需要加上`#[repr(inttype)]`或`#[repr(u8)]`才能通过编译。
  • 作者提供了一个枚举PokerCard的例子,编译时出现错误E0732。
  • 查看错误信息后,添加了`#[repr(u8)]`后可以通过编译。
  • 作者对没有加`#[repr]`的枚举Number和Number1的运行结果感到困惑,期望结果是3,但实际结果为96。
➡️

继续阅读