Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.25;
Скачать: CL | DM;

Вниз

Что за сообщение?   Найти похожие ветки 

 
Vudu   (2005-07-08 17:38) [0]

Delphi выдает такое сообщение при запуске проекта что оно значит и вредно ли это?
Unsafe code "String index to var param"
примерно в таком месте
 for i:=1 to Length(shifr) do
 begin
   shifr[i]:=chr(ord(shifr[i])+77);
 end;
делаю небольшое шифрование для сохранения в файл


 
Просто Джо ©   (2005-07-08 17:44) [1]

Что-то я очень сомневаюсь, что Делфи 6 выдает сообщение об unsafe code...
А смысл сообщения таков:
нечего в процедуру в качестве var параметра передавать индекс цикла. Потому что внутри этой процедуры ты можешь изменить его. А это есть очень и очень не гуд.
П.С. У меня на Делфи 6 такой код вообще не скомпилится:

procedure X (var Param: Integer);
begin
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 I: Integer;
begin
 for I := 0 to 10 do
   X(I)
end;


 
Просто Джо ©   (2005-07-08 17:47) [2]

.
>  [1] Просто Джо ©   (08.07.05 17:44)

Поспешил. Невнимательно прочитал вопрос. Но, тем не менее, по поводу версии Делфи ты наверняка привел неверную информацию


 
Игорь Шевченко ©   (2005-07-08 17:50) [3]

При запуске сообщения выдает сам проект


 
Vudu   (2005-07-08 18:47) [4]

А ну да не 6 а 7, слегка ошибся.
сообщение выходит в нижнем дополнительном окошке build, на работу программы невлияет
( shifr[i] это строка ) на цикл она невлияет


 
begin...end ©   (2005-07-08 18:57) [5]

> Vudu   (08.07.05 17:38)

> вредно ли это?

Вряд ли. Отключить можно в настройках проекта: Project -> Options -> Compiler Messages -> Warnings -> Unsafe code.

> shifr[i]:=chr(ord(shifr[i])+77)

Можно проще (хотя и с тем же warning"ом): Inc(shifr[i], 77).


 
Vudu   (2005-07-09 00:19) [6]

Я все время забываю про эту процедуру, да и привык уже



Страницы: 1 вся ветка

Текущий архив: 2005.07.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
14-1120257268
Green_Templar
2005-07-02 02:34
2005.07.25
а давайте проверим правдивость рекламы в Украине!


14-1120217024
msguns
2005-07-01 15:23
2005.07.25
Бардак на Ж/Д


3-1118714814
Viktop
2005-06-14 06:06
2005.07.25
как в базу Paradox записать изображения.


3-1118776605
Starcom
2005-06-14 23:16
2005.07.25
Дата в БД Парадох и как правильно сравнить её с текущей...


4-1117192528
RedStranger
2005-05-27 15:15
2005.07.25
Как послать e-mail?