скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как отключить Range Checking для участка программы, а затем вновь включить



Можно сделать это, используя "IFOPT" и "DEFINE".


type
  PSomeArray = ^TSomeArray;
  TSomeArray = array[0..0] of integer;

procedure TForm1.Button1Click(Sender: TObject);
var
  p: PSomeArray;
  i: integer;

begin
{$IFOPT R+}
{$DEFINE CKRANGE}
{$R-}
{$ENDIF}
  GetMem(p, sizeof(integer) * 200);

  try
    for i := 1 to 200 do
      p[i] := i;
  finally
    FreeMem(p, sizeof(integer) * 200);
  end;

{$IFDEF CKRANGE}
{$UNDEF CKRANGE}
{$R+}
{$ENDIF}
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook