Свързани въпроси 'delete-operator'

Изтриване на C++ структура от STL списък с помощта на итератор
Имам тази програма за тестване. Не знам как да изтрия структура в списъка с помощта на итератор. #include<iostream> #include<list> using namespace std; typedef struct Node { int * array; int id; }Node; void main() {...
4301 изгледи
schedule 21.09.2022

Замяната на изтриване на C++ оператор не винаги се използва
Имам някои C++ модулни тестове, използвайки google test. Събрахме малко код, за да заменим операторите new/delete, за да проверим за течове в тестовете на модула. Все пак има проблем. Някои от google test new/deletes използват моите заменени...
321 изгледи

Освобождаване на последния елемент от динамичен масив
аз имам int * array=new int[2]; и бих искал да освободя паметта на последния елемент , като по този начин намаля разпределената памет само до 1 елемент. Опитах се да се обадя delete array+1; но дава грешка *** glibc открит...
3151 изгледи
schedule 07.10.2022

Как да освободите памет от динамичен структурен масив
Като човек, който никога не се е занимавал с освобождаване на памет и т.н., получих задачата да създам динамичен масив от структури и да създам функции за добавяне или изтриване на елементи от масив. При изтриване трябва да освободя паметта, която...
13316 изгледи
schedule 24.10.2022

Изтриване от една таблица и актуализиране на друга
Имам две таблици със следните колони: SUMMARY(sum_id, sum_number) and DETAILS(det_id, det_number, sum_id) Искам да изтрия редове от таблица DETAILS с det_id в списъка с идентификатори, което може да стане чрез: DELETE FROM details WHERE...
1832 изгледи
schedule 23.10.2022

Как да изтрия указател на обект от вектор, без да причиня грешка в паметта?
Имам вектор от указатели на обекти, към които добавям и изтривам, докато преминавам през цикъл, за да актуализирам обекти. Изглежда не мога да изтрия обекти, които са „умрели“ от вектора, без да причиня грешка в паметта. Не съм много сигурен какво...
1162 изгледи
schedule 10.11.2023

изтриване на указател без унищожаване на данни
Аз съм сравнително нов в C++. Разпределям буфер: uint8 *buffer = new uint8[len]; Използвайки библиотека на трета страна, използвам метод на обект "img" (това е картина), за да "поема" буфера като необработени данни за изображение:...
171 изгледи
schedule 11.12.2022

Проблеми с char * и delete
Имам трудни проблеми, докато се опитвам да делокирам този указател. Имам тази грешка: грешка за обект 0x10007fd20: освобождаваният указател не е разпределен Имам следната структура: char * doSomething() //I cannot change this...
3274 изгледи
schedule 04.02.2024

Изтрива ли методът Clear() на извиквания на STL контейнери върху обекти в купчина?
Възможен дубликат: Изтрива ли std::vector.clear() (освобождава памет) всеки елемент? Имам карта, където вторите елементи са разпределени в купчина. Трябва ли изрично да извикам delete по време на повторение или метод erase() и...
2286 изгледи
schedule 11.04.2024

Гарантирано ли е, че указателят ще запази стойността си след `delete` в C++?
Вдъхновен от този въпрос . Да предположим, че в кода на C++ имам валиден указател и го delete правилно. Съгласно стандарта C++, указателят ще стане невалиден (3.7.3.2/4 - функцията за освобождаване ще направи невалидни всички указатели,...
3718 изгледи
schedule 11.05.2024

Изтриване на дефинирани от потребителя вектори - C++
Имам 2 класа, да речем A & B. Клас B има собствен деструктор. В рамките на клас A имам вектор от указатели към обекти от клас B. Векторът е както следва: vector<B*> vect; В деструктора за клас A, как да извлека памет? Ако преминавам...
522 изгледи
schedule 13.05.2024

Принудително претоварване на new/delete за наследяващи класове
Имам доста предизвикателство (може би само за мен). Имам няколко класа, които наследяват от някакъв базов клас A. Всички тези класове трябва да претоварват операторите new и delete. Засега претоварих new/delete в клас A, за да върна съобщение за...
44 изгледи