我想在日誌文件中輸出標題行,然後在數據前輸出一行「 - 」。爲此,我創建一個標題的字符串,然後輸出相同數量的' - '。如何從Ada中的其他字符串構建字符串?
但是下面的代碼總是失敗並帶有CONSTRAINT_ERROR,因爲生成的字符串不是1024個字符。在Ada中,字符串分配需要完全相同的長度,而不僅僅是足夠的容量。選項1)計算確切的長度,但對未來的變化很脆弱。 選項2)是使用除String之外的其他東西。
procedure F() is
Msg : String(1..1024);
begin
Open_Log();
Msg := FLS(" Field1", 12) &
"|" & FLS(" Field2", 12) &
"|" & FLS(" Field3", 16);
Log_To_File("# " & Msg);
Log_To_File("# " & Fill_String(Msg'Last, '-'));
end;
+1主張另一種思維方式;不錯的着色劑破解! – trashgod