在 Ada 中创建子类型而不指定范围有什么意义?

2023-12-07

在Ada中,我经常看到这样的东西:

type Number is new Integer;

这有什么意义呢?难道你就不能快乐吗?Integer? 我还看到过这样的代码:

type Small_Number is range 1..5;

这对我来说是有道理的;我明白为什么这会有用。但为什么你会选择使用前一个例子呢?


我更常见的是看到这样的代码:

Type Pounds  is new Integer;
Type Euros   is new Integer;
Type Dollars is new Integer;

这意味着您不会意外地将英镑兑换成欧元兑换成美元。

如果您想在两者之间进行转换,则需要执行显式转换或编写转换例程,这两者都会考虑适用的汇率。

(现在我进一步思考,对于这个例子,Float 会比 Integer 更好!)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Ada 中创建子类型而不指定范围有什么意义? 的相关文章

随机推荐

  • Firebase 云函数 - null user.displayName onCreate

    我正在尝试编写一个函数 在用户创建时发送欢迎电子邮件 我跟着去this教程 其中说可以访问新创建的用户displayName with user displayName 尽管它不断返回null为我 我意识到发生这种情况的可能原因 如果我错了
  • 内核栈和用户空间栈

    内核堆栈和用户堆栈有什么区别 为什么使用内核栈 如果在 ISR 中声明局部变量 它将存储在哪里 每个进程都有自己的内核堆栈吗 那么进程如何在这两个堆栈之间进行协调呢 内核堆栈和用户堆栈有什么区别 简而言之 除了使用内存中的不同位置 因此堆栈
  • Java 资源管理:了解 Findbugs 结果

    Findbugs 给我带来了一个打开两个Closeable实例 但我不明白为什么 Source public static void sourceXmlToBeautifiedXml File input File output throw
  • SKTexture:加载图像资源时出错

    这似乎工作得很好 当我创建一个具有完全相同的内容 只是新图像 的新项目时 它不起作用 我什至尝试过 var mainChartxt SKTexture imageNamed mainC png 它仍然给我同样的错误 SKTexture Er
  • Ubuntu 18.04 中 Python 3 环境中的 PyFMI

    我的目标是能够在 Ubuntu 18 04 中运行 OpenModelica 生成的 FMU 然后在 Python 3 环境中使用 PyFMI 运行它们 我按照此处的 PyFMI 安装大纲进行操作https jmodelica org py
  • 如何将 JavaFX 进度条绑定到存储在对象中的双精度值

    我还在学习中 希望你能帮助我 我有一个对象myObject存储一个双精度值 表示计算进度的百分比 当myObject初始化时 值为0D 并且经常在myObject本身内部更新 直到达到100D 我想bind这个双值到ajavaFX进度条 这
  • Samsung Galaxy S4(1080X1920) 的 AVD 显示黑屏

    经过大量搜索后 我发现了这个链接 http developer sonymobile com knowledge base sdks sony add on sdk install the sony add on sdk 按照说明的步骤 我
  • NumPy:同时计算许多小矩阵的点积

    我有一长串 3 3 矩阵 例如 import numpy as np A np random rand 25 3 3 对于每个小矩阵 我想执行一个外积dot a a T 列表理解 import numpy as np B np array
  • Z3 结果的随机性

    我正在使用 Z3 Python 接口作为我正在编写的研究工具的一部分 当我在同一查询上重复运行 Z3 求解器时 我注意到一些非常奇怪的行为 特别是 我似乎每次都不会得到相同的结果 即使我在运行之前明确重置了求解器 作为参考 这是我的代码 i
  • 如何使用 ggmap 获得宽屏分辨率

    我有一个这样的数据 YEAR STORM DATETIME NORTH WEST PRESSURE WIND SPEED TRACKDATE 2011 arlene 6 28 2011 6 00 19 9 92 8 1007 30 NA 6
  • C# 中的时区转换

    我有一个日期格式 类似于 2009 年 8 月 11 日星期一 13 15 10 GMT 如何将其转换为 EST 格式 这个或类似的应该可以解决问题 var dateString Tue 11 Aug 2009 13 15 10 GMT v
  • 如何将 XML 元素组转换为 JSON 列表?

    是否可以应用仅匹配唯一属性的模板
  • Jquery 日期选择器:选择一个日期,自动更新第二个字段

    我正在使用 Kelvin Luck 的 jQuery 日期选择器插件 http www kelvinluck com assets jquery datePicker v2 demo 并且需要执行以下操作 也许有人可以帮助我 在旅行保险网站
  • Android中如何设置第一个Seekbar过程值是为第二个Seekbar分配初始值?

    我有两个搜索栏 我想设置第一个Seekbar的过程值是为第二个Seekbar分配初始值 我的确切要求是 我希望用三个搜索栏覆盖 0 到 100 例如 如果 FirstSeekBar 覆盖 1 到 30 则第二个搜索栏自动启动 30 到 10
  • R重复序列每次重复加1

    我的 R 类作业簿有一个问题 我无法解决 我需要 编写一个使用rep 创建一个包含元素1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 7的向量的R命令 它似乎是一个 1 到 4 的重复序列 重复 4 次 并且每次重复时向起始元素
  • Mac 上禁用 Chrome 开发者工具

    我知道有关如何启用 Chrome 开发人员工具的问题过去已经得到解答 但它们适用于 Windows 我使用的是 Mac 开发人员工具呈灰色 检查元素也是如此 如何在我的 Mac 上重新启用它们 解决方案 1 重置 Chrome 的标志 On
  • 如何在 Xcode 中重命名项目?

    我有一个用 Objective C 编写的已完成的应用程序 我想重命名该文件 我怎么做 最新版本的 Xcode 在 项目 菜单中有一个 重命名 项
  • UIImageView.animationImages之后如何清除内存?

    我创建了一个新的 Xcode 项目 其中仅包含以下内容 从 png 创建 UIImage 数组的代码拖入项目 在将图像附加到数组时 我尝试了 UIImage named 和 UIImage contentsOfFile 一个 UIImage
  • 为什么即使结果定义为浮点数,结果输出也是整数?

    include
  • 在 Ada 中创建子类型而不指定范围有什么意义?

    在Ada中 我经常看到这样的东西 type Number is new Integer 这有什么意义呢 难道你就不能快乐吗 Integer 我还看到过这样的代码 type Small Number is range 1 5 这对我来说是有道