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

Вниз

NIL из Create   Найти похожие ветки 

 
Lanbo   (2003-09-16 14:10) [0]

Возможно ли принудительно в Create объекта установить возвращяемое значение в nil, если в конструкторе произошли какие-либо исключения, например... Пробую на конструкторе потока, вылетает Access Violation... в чем дело?


 
clickmaker ©   (2003-09-16 14:12) [1]

А на фига?


 
Polevi ©   (2003-09-16 14:13) [2]

какого потока ?
делай raise в конструкторе


 
Lanbo   (2003-09-16 14:13) [3]

и вдогонку, забыл совсем...

Если конструктор объекта выполнил inherited, но не отработал до конца (в слечае искл. ситуации), отработает exucute, destructor или вообще ничего?


 
Lanbo   (2003-09-16 14:16) [4]

fThread = TMyThread.Create(параметры мои);

Вот если объект не создался, то возвращаемое значение не всегда nil. if Assigned(fThread) также не работает по причине того, что ответ не нулевой.


 
Polevi ©   (2003-09-16 14:19) [5]

при exception в кострукторе вызовется деструктор

try
Thread = TMyThread.Create(параметры мои);
except
ShowMessage("Ошибка создания объекта TMyThread");
end;


 
Lanbo   (2003-09-16 14:26) [6]

Что будет в этом случае:
TMyThread.Create(парамз);
begin
...........
try
тут происходит exception
except
Self.Free //? нужно или нет? или диструктор отработает автоматом?
end;
............
end;


 
Lanbo   (2003-09-16 14:28) [7]

и вдогонку к пред. примеру:

Значение из Create вернется после отработки деструктора или после выхода из Create?


 
Polevi ©   (2003-09-16 14:41) [8]

F7


 
Юрий Федоров ©   (2003-09-16 21:50) [9]

Если в конструкторе произошло исключение, автоматически вызовется деструктор, память будет освобождена, а значения, возвращаемого конструктором ты просто не получишь.
[6] Не нужно, вообще try except не нужен



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

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

Наверх




Память: 0.48 MB
Время: 0.035 c
1-96291
Lanbo
2003-09-16 14:10
2003.09.29
NIL из Create


1-96188
maxXP
2003-09-15 22:25
2003.09.29
Как определить папку работ-го приложения?


3-96083
Filat
2003-09-09 20:50
2003.09.29
IBTable.Locate - чем можно заменить?


14-96445
dtm
2003-09-04 17:43
2003.09.29
Team Source - с чем его есть?


14-96431
BOA_KAA
2003-09-10 10:49
2003.09.29
Статьи: сравнение OpenGL и DirectX