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

Вниз

TStringList   Найти похожие ветки 

 
ККК   (2004-11-27 13:51) [0]

Почему когда я пишу код
var
Pr:TStringList;
begin
Pr.Create;

Pr.Free;
end;

у меня выдаётся ошибка,
а когда пишу вот так

var
Pr:TStringList;
begin
Pr:=TStringList.Create;

Pr.Free;
end;
ошибки не выдаётся, а ведь код практически один и то же только написан по разному.


 
KilkennyCat ©   (2004-11-27 13:56) [1]

а в ошибке разве не сказано?


 
Gero ©   (2004-11-27 13:59) [2]


> а ведь код практически один и то же только написан по разному.

Нет, код не один и тот же.
А ошибка выдается в первом случае потому что ты делаешь Pr.Create, а Pr у тебя-то равно nil.
То есть по сути ты вызываешь метод еще не существующего объекта.
А во втором случае ты создаешь в памяти объект TStringList, и ассоциируешь его с переменной Pr.


 
ККК   (2004-11-27 14:00) [3]

Gero © понял спасибо


 
Anatoly Podgoretsky ©   (2004-11-27 14:15) [4]

Потому что
begin
Pr.Create;
не инициализировано, вот после
Pr:=TStringList.Create;
уже можно делать
Pr.Create;



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

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

Наверх




Память: 0.47 MB
Время: 0.053 c
1-1101310313
Frozzen
2004-11-24 18:31
2004.12.12
Освобождение памяти


14-1100975283
Shadow-st
2004-11-20 21:28
2004.12.12
ipframe


10-1054622130
OlegL
2003-06-03 10:35
2004.12.12
Server DLL & .exe


3-1100069354
first_may
2004-11-10 09:49
2004.12.12
Ошибка...


14-1101044542
f00rd
2004-11-21 16:42
2004.12.12
SpeedButton + темы WinXP