ada

    0熱度

    1回答

    可以知道某個常量的地址是否改變了它,或者Ada對此有所保護? 我目前正在研究一個大項目,我無法讀取項目的所有代碼。但我必須調試它的一部分。我有奇怪的麻煩。事實上,我已經改變了我的包中的 My_Var : constant Integer :=1;這個變量的聲明(我們稱之爲My_Package) 然後在項目中完成一些東西(黑盒) 當我在最後執行該代碼時, My_Package.My_Var<=0返回

    -1熱度

    4回答

    我在函數內部聲明瞭一個常量(一個包含字符串的大型結構常量),它僅在函數內部使用。 它會對我的程序有任何執行時間的影響嗎? ' 每次調用函數時(需要更多時間)或者只有一次函數都會創建它們,並且參考將在整個生命週期中使用。 如果我在函數(全局)之外聲明常量,執行速度會更快嗎?

    -1熱度

    2回答

    說明:我在Ada 95中製作的程序假設根據用戶的輸入輸出一個稅表,如下所示: 價格:無稅|稅收|價格與稅收 如果用戶輸入價格:10,最新價格: 20,步驟: 0.5和稅爲整數。程序然後在停止之前以0.5的步長從10重複到20。 我面臨的問題是「稅收」和「含稅價格」的輸出值。我得到的結果是兩列都是**** inf ****。我不知道這實際上意味着什麼,我也找不到任何其他信息。所以我做了另一次嘗試,得

    0熱度

    1回答

    我試圖編譯一個簡單的GTK應用程序,但是當我編譯,生成不能歸因於GTK源警報... 編譯日誌: Compile [Ada] main.adb gdk-display.ads:361:80: (style) this line is too long gdk-event.ads:290:80: (style) this line is too long … gprbuild:

    1熱度

    2回答

    我試圖編譯這個Calculator.ada文件使用gcc -c Calculator.ada並收到錯誤warning: Calculator.ada: linker input file unused because linking not done - 我試過尋找解決方案並下載其他東西,可能編譯這個但我還沒有想通出來呢.... 這裏是Calculator.ada: -- -- Integer

    1熱度

    1回答

    在Ada中嵌套「然後中止」結構合法嗎?如果是,我可以如何正確使用它們?我有這樣的代碼: with Ada.Text_IO; use Ada.Text_IO; procedure Main is task TestTask is end TestTask; task body TestTask is begin select de

    2熱度

    1回答

    我使用的是Windows 10(64位),我從http://libre.adacore.com/download/configurations#下載了GNAT GPL 2017,ARM ELF格式(託管在Windows上)。 我創建了一個示例代碼: with Ada.Text_IO; use Ada.Text_IO; procedure Hello is begin Put_Line

    1熱度

    1回答

    我想創建和初始化以下方式控制的類型(有點像一個廠)創建一個函數: function Create return Controlled_Type is Foo : Controlled_Type; begin Put_Line ("Check 1") return Foo; end Create; procedure Main is Bar : C

    0熱度

    1回答

    我正在使用GTKADA,爲一個小應用程序,並希望右對齊菜單欄上的幫助菜單。 舊的方法是在新菜單上調用Set_Right_justified,但現在已過時。 可以看到,我應該可以使用Set_Hexpand和Set_Halign來做到這一點。 我目前使用的代碼是: - with GTK.WIDGET; procedure Add_Menu_To_Menu_Bar (Menu_Bar : in G

    0熱度

    2回答

    我是for ***'Address use ***的新用法。我想知道這種用法有什麼限制。所以,我創建了以下程序: procedure letshack (A : System.Address) is My_String : String(1..100000); for My_String'Address use A; begin Put(My_Stri