gpt4 book ai didi

Ada:规范的公共(public)部分和私有(private)部分分开了吗?

转载 作者:行者123 更新时间:2023-12-04 18:25:02 29 4
gpt4 key购买 nike

我了解到Ada规范文件(*.ads)中有一个公共(public)部分和一个私有(private)部分,只有公共(public)部分应该被编译单元(通常是一个包)的用户考虑。

在不同的文件中将规范的公共(public)部分和私有(private)部分分开实际上并不常见?

所以,最后,这样一个包的用户知道规范层上的包的内部结构,但不能使用它。我在这儿吗?

感谢和欢呼,沃尔夫冈

最佳答案

不,Ada 不允许您将包规范的公共(public)部分和私有(private)部分分开。

Ada 最初的首席设计师 Jean Ichbiah 做了一些语言的工作,实际上将 public、private(数据结构)和实现部分分开了一个包,但这并没有成为 Ada 的一部分。

还有:

  • 子包的私有(private)部分和主体可以看到其父包的私有(private)部分。
  • 私有(private)子包的规范可以看到其父包的私有(private)部分。

...所以你不能总是完全忽略包规范的私有(private)部分。

一个实际的例子:

当我编写单元测试时,我喜欢将测试套件放在我正在测试的包的子包中。这样我的测试用例就不仅限于检查包中声明的类型的公共(public) View 。

关于Ada:规范的公共(public)部分和私有(private)部分分开了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44769153/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com