ada

    2热度

    1回答

    我已经在Windows 10上安装了gnat gpl 2016并尝试使用gnatmake编译下面的(小)程序。问题是由于从libc导入了一个函数,这个任务似乎比简单的gnatmake.exe gsh_repl.adb复杂得多[gnatmake会在linux上编译这个很好 - 在最坏的情况下添加-lglibc就足够了]。我的问题是,我不知道应该添加哪个选项才能使链接阶段成功完成。下面是程序: wit

    1热度

    1回答

    我的问题很简单,就像谷歌让我失望一样。如何将无界的字符串转换为整数? 如果字符串是有界的,我可以这样做:I : Integer := Integer'Value("613"); 然而,我的字符串是无界的,和Ada引发此错误: expected type "Standard.String" found private type "Ada.Strings.Unbounded.Unbounded_Str

    1热度

    1回答

    我正在大学攻读Ada。今天,我的教授向我们提出了一个问题。在下面的代码中有三个类型声明。第三个不会编译错误“缺少新的”。 我假设的“类型”关键字让编译器知道我们即将定义的存储类,所以我的问题是: 哪些声明之间的语义差别? 如果省略关键字Integer,那么Ada在指定范围时是否采用通用整数类型?这似乎是一个明显而合乎逻辑的结果。此外,当“范围”之前的关键字“整数”是新的,那么是否需要? 我希望这不

    1热度

    1回答

    我实例化的Ada.Containers.Vectors通用包这样的: package My_Vectors is new Ada.Containers.Vectors( Element_Type => My_Type, Index_Type => Natural); 说,我有一个载体和Standard.Natural值声明: Foo_Vector: My_vectors.Ve

    3热度

    3回答

    我有一个通用的包装Containers.Stacks看起来大致是 generic type Value_Type is private; package Containers.Stacks with Preelaborate is --Node stuff type Stack is new Container with private; --Oth

    0热度

    2回答

    所以我不得不从文本文件中读取关系来对它们执行拓扑排序。问题在于关系中的数据是异构的。有大约3种不同的枚举数据类型,并且还有整数和浮点数。当从文件中读取这些数据时,根据我的理解,它会被读取并存储为字符串,直到执行Unchecked_Conversion。最终,我的问题是,如果我要用任意组合的这些类型读取任何文本文件,是否需要扫描每一个我遇到的类型,然后再转换它?像,我必须扫描每个元素检查一段时间,“

    2热度

    2回答

    我们最近更新了GCC版本(4.8.2至5.3.0),并在某些Ada应用程序中开始接收意外的约束错误。我已经将它归纳为以下: -- moo.adb with text_io; procedure moo is type thing_type is (something1,something2,something3,something4,something5,something6);

    0热度

    1回答

    我在ADA定义的矩阵型是这样的: type Matrix_Type is array(Natural range <>, Natural range <>) of Item_Type; 为了一些转换应用到输入矩阵 ,我需要一个函数来定义一个矩阵切片。 我想,通过这样做以下方式 procedure Do_Stuff(M: Matrix_Type) is -- c needs to be h

    0热度

    2回答

    让下面的Ada类型定义: type Type_Huge is array (1 .. Integer'Last) of Float; type Type_B is (foo, bar, blop, bloub); type Type_A (disc : Type_B := foo) is record case disc is when foo =>

    0热度

    2回答

    因此,这是一个简单的项目,我之前将它们放在一起进行测试,然后再做一些很酷的事情。最终的目标是让程序能够通过真棒dll功夫来处理模块化。 但是,宝贝的步骤。现在我只想制作链接。 这里我有Adder.ads: package Adder is function Add(A : Integer; B : Integer) return Integer; end Adder; 和各自A