くだすれDelphi(超初心者用)その26
■ このスレッドは過去ログ倉庫に格納されています
0448ななしへたぐらま ◆XcB18Bks.Y
2005/08/10(水) 21:13:41それは $I というコンパイラ指令です.
ヘルプにある $I の説明がわかりにくいので説明しますが,
ソースコードに{$I-}というコンパイラ指令があると
それ以後のコードはファイルの読み書きに関する手続き(ResetやRead, BlockReadなど)で
読み書きの処理に失敗(ファイルがない,ディスクがいっぱい,など)したときに
EInOutError例外を生成しなくなります.
この場合,これらの手続きごとにIOResult関数を参照して
正しく読み書きできたかどうかを調べなければなりません.
{$I+}の場合は逆に失敗時に上記の例外を生成します.
どちらも指定しない場合はプロジェクトオプションの『I/Oチェック』をチェックしているかどうかによります.
☆ ☆
この指令は恐らく過去に書かれたPASCALのソースコードとの互換性を取るためにものだと思われます.
Delphiで新規にプログラムを書く場合は使う必要はありません.
お手持ちのソースコードの処理1と処理2には恐らくIOResult関数でのチェックが入っていると思います.
もしなければ読み書きに失敗しても無視するだけの極悪手抜きコードかもしれません.
■ このスレッドは過去ログ倉庫に格納されています