Access Violation
の代わりにこの手順を実行すると「EPrivilege - Privileged instruction
」が表示されるのはなぜですか?なぜ悪いオブジェクトポインタを解放すると、EAccessViolationではなくEPrivilegeがスローされるのですか?
{$Warnings OFF}
procedure TFrmMyTest.mnuCrashMeClick(Sender: TObject);
var t: TStringList;
begin
FreeAndNil(t);
end;
{$Warnings ON}
ランダムにメモリにポイントするオブジェクトを解放しようとしています。しかし、私はアクセス権違反があり、特権命令ではないと考えています。
(私は実際のプログラムでは、上記のコードを使用する予定がない心配しないでください。)