Re: Уничтожение объектов
От: sidorov18 США  
Дата: 30.11.10 07:37
Оценка:
Здравствуйте, AlexandrRya, Вы писали:

AR>Как правильно освободить память в таком случае:



AR>
AR>APT_UString *uKeys = new APT_UString[keyNum];

AR>for (int i=0; i < keyNum; i++){
AR>     uKeys[i] = APT_ConvertFromUTF8String(*keys[i]);
AR>}
AR>


AR>Здесь APT_UString — это класс. А функция APT_ConvertFromUTF8String определена следующим образом:


AR>
AR>APT_DLL_CORE APT_UString APT_ConvertFromUTF8String(const APT_String& str, bool allowSur=true);
AR>


AR>То есть я создаю массив объектов APT_UString, а потом присваиваю каждому элементу массива результат выполнения функции, который тоже является объектов APT_UString (не ссылка). Мне кажется, что здесь есть лишние объекты APT_UString, которые не уничтожаются. Как мне лучше сделать инициализацию и удаление объектов?


вы про

delete[] uKeys;


?

еще для этого можно std::vector использовать — тогда он сам будет все удалять
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.