Директива $Warnings компилятора Delphi определяет, показывает ли Delphi предупреждениям компиляции.
- {$Warnings Off}
- {$Warnings On}
Директива компилятора $Warnings определяет, будет ли показывать Delphi предупреждения компиляции или нет.
Предупреждения очень полезны для того, чтобы указать потенциальные или реальные проблемы кода. Вы должны всегда включать данную опцию, и идеально всегда исправлять ваш код так, чтобы не было никаких предупреждений компиляции.
Примечания.
Значение по умолчанию - $Warnings On
$Warnings в вашем коде может быть установлена в on или off множество раз.
Директива компилятора $Warnings: Выдаёт предупреждение, что возвращение значения из функции потерпит неудачу
var
i : Integer;
begin
// Включение предупреждений
{$Warnings On}
// Присвоение i известного значения
i := 234;
// Показ значения в начале
ShowMessage('i = '+IntToStr(i));
// Вызов нашей плохо выполняемой функции
i := GetValue;
// Показ значения теперь
ShowMessage('i теперь = '+IntToStr(i));
end;
// Функция, которая не в состоянии возвратить значение!
function TForm1.GetValue: Integer;
begin
// Не делаем ничего!
end;
Результат
Предупреждающее сообщение :
[Warning] Unit1.pas[57]: Return value of function 'TForm1.GetValue' might be undefined
i = 234
i теперь = 12404492
Директива компилятора $Warnings: Без предупреждения о не успешном возвращении значения из функции
var
i : Integer;
begin
// Включение предупреждений
{$Warnings Off}
// Присвоение i известного значения
i := 234;
// Показ значения в начале
ShowMessage('i = '+IntToStr(i));
// Вызов нашей плохо выполняемой функции
i := GetValue;
// Показ значения теперь
ShowMessage('i теперь = '+IntToStr(i));
end;
// Функция, которая не в состоянии возвратить значение!
function TForm1.GetValue: Integer;
begin
// Не делаем ничего!
end;
Результат
Код не выдаст никакого предупреждающего сообщения
i = 234
i теперь = 12404492
