PascalからCという流れは?だが。 0089デフォルトの名無しさんNGNG raise Sage; --(意味不明) 0090デフォルトの名無しさんNGNG>>89 そういやコメントが--なんだよね。 0091デフォルトの名無しさんNGNG if 書き込む then 存続; else dat落ち; end if;
-- ぶらさがりelse問題の無い理想的なif文です 0092デフォルトの名無しさんNGNG loop 存続; exit when dat落ち; end loop;
-- 無限ループ専用の構文があるのも珍しいかも 0093デフォルトの名無しさんNGNG A: loop loop exit A; end loop; end loop;
loop loop goto B; end loop; end loop; <<B>> 0094デフォルトの名無しさんNGNG declare type S is array(Character) of Boolean; Age: S := ('A' | 'G' | 'E' => True, others => False): Sage: S := ('S' | 'A' | 'G' | 'E' => True, others => False): R: S; begin R := Age and Sage; -- Booleanの配列はPascalみたく集合演算できる end; 0095デフォルトの名無しさんNGNG Thread.Write(Text => "仮引数明示呼びだし", Mail => sage); 0096デフォルトの名無しさんNGNG with System; use System; with Interfaces.C; use Interfaces.C; with Interfaces.C.Strings; use Interfaces.C.Strings; with Win32; use Win32; with Win32.WinUser; use Win32.WinUser; procedure WinHello is pragma Linker_Options("-Wl,-subsystem,windows"); function To_CStr(C_Str: CHAR_Array) return LPCSTR is function UC is new Ada.Unchecked_Conversion(Address, LPCSTR); begin return UC(C_Str(C_Str'First)'Address); end; Dummy: Win32.INT; Text: constant CHAR_Array := "Text" & Win32.Nul; begin Dummy := MessageBox(Null_Address, To_CStr(Text), To_CStr("Caption" & Win32.Nul), MB_YESNO); end WinHello; 0097デフォルトの名無しさんNGNG ADA95どうよ? 0098デフォルトの名無しさんNGNG Ada95で、クラスワイド型じゃないと多態しないというのはまあいいのですけど、 多態で飛んでいった先の各ルーチンに渡されるオブジェクトはクラスワイド型じゃない方ですよね? 多態先からまた多態したい時はそのつどクラスワイド型にキャストし直すしか無いのでしょうか? 0099デフォルトの名無しさんNGNG>>92 > -- 無限ループ専用の構文があるのも珍しいかも