如何获取Ada中的枚举值?

问题描述 投票:0回答:1

我受命记录一些现有代码并显示多个数据结构的布局。

添加gprbuild选项-gnatR2s会生成rep(resentation)子句,以便我可以看到结构的布局(大小,起始字节/位)。

[但是,一些流血的人认为我给他们提供代码还不够

type suit = (hearts, spades, diamonds, clubs);

他们想清楚地看到

hearts = 1
spades = 2
diamonds = 3
clubs = 4

大概是因为它们不能从一个数开始向上计数。

是否有任何编译器选项将因此扩大我的枚举,从而节省了编写小的Python脚本的工作?

enums compilation ada gprbuild
1个回答
0
投票

只需手动添加一个表示子句:

type suit is (hearts, spades, diamonds, clubs);
for Suit use
  (hearts => 1,
   spades => 2,
   diamonds => 3,
   clubs => 4);

注意任何数字都是有效的。

© www.soinside.com 2019 - 2024. All rights reserved.