** mxn |
Отправлено: 31.01.2006, 13:04 |
|
Не зарегистрирован
|
Подскажите пожалуйста, если, к примеру есть некая функция
void __fastcall TForm1::TestClick(TObject *Sender)
{
AnsiString Test;
....
}
в ней объявлена переменная типа AnsiString. Допустим она содержит большой объем данных. Должен ли я ее удалять или она удаляется сама после отработки функции? И как можно удалить переменную типа AnsiString ? |
|
BreakPointMAN |
Отправлено: 31.01.2006, 13:15 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 86
|
В данном случае переменная Test является локальной для твоей функции, и время ее существования заканчивается с выходом из функции...
|
|
gvg |
Отправлено: 31.01.2006, 13:36 |
|
Машинист паровоза
Группа: Участник
Сообщений: 222
|
А вообще, удалять нужно то, что создано вами динамически с помощью оператора new. Если бы
AnsiString *Test = new AnsiString();
тогда где-то должно было быть
delete Test; |
|
olegenty |
Отправлено: 31.01.2006, 13:39 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
созданные динамически объекты зачастую удобно обернуть в auto_ptr.
|
|