1

在 Ada 中创建派生类型很常见,比如一个新的 Float 类型,最后一个元素是 Float'Last。在定义新的 Float 类型时,我还没有看到有人使用 Float'Safe_Large 而不是属性 Float'Last。在我的 32 位机器上,两者

Put( Float'Image( Float'Last ));

Put( Float'Image( Float'Safe_large ));

返回值 3.402..E38

我想知道这两个数字属性之间的区别,也许还有为什么“Safe_Large”不像“Last”属性那样常用。

非常感谢...

4

1 回答 1

2

目前,该Last属性是为任何标量子类型定义的。现在已过时,Safe_Large可在GNAT中作为实现定义的属性用于与 Ada 83 兼容。Ada 95 基本原理提供了一些关于“安全范围”讨论中变化的见解。

于 2010-07-21T22:07:36.753 回答