Вопросы по теме 'dynamic-allocation'

Динамически распределенный связанный список в С++. Что делать после исключения, чтобы предотвратить утечку памяти?
Возможный дубликат: Динамически выделяемый связанный список в c++. Что делать после исключения, чтобы предотвратить утечку памяти? Мне нравится реализовывать связанный список в С++, при добавлении нового узла я динамически выделяю его,...
274 просмотров

Объявление глобальной переменной (массива) внутри функции в C
Мне нужно объявить глобальный двумерный массив в C. Размер массива определяется шириной и высотой данного изображения. Поэтому мне сначала нужно загрузить картинку, а уже потом создавать массив. Но если я хочу, чтобы переменная (в данном случае...
18087 просмотров
schedule 11.06.2022

Мьютекс для динамически выделяемой памяти в C
Я читаю Thread Synchronization из книги «Расширенное программирование в среде unix». В этом разделе приведен пример использования мьютекса с динамически размещаемый объект. У меня есть некоторые сомнения в том же. Здесь я делюсь...
1967 просмотров

Перегрузка оператора istream с динамическим выделением памяти
Привет, так что я запутался с моим оператором istream и >>. Мне нужно перегрузить этот оператор, чтобы получить входные данные для класса, который использует динамическое выделение памяти для строки C. Мой файл Employee.h #include...
2013 просмотров

ошибка C2512: нет подходящего конструктора по умолчанию (не классов)
Я начинаю со структур, и у меня возникают проблемы с динамическим размещением моего массива структур. Я делаю то, что вижу в своей книге и в Интернете, но у меня не получается. Вот оба полных сообщения об ошибках: C2512: «Запись»: нет...
4023 просмотров

Почему методы сортировки Rust выделяют память?
Такие методы, как sort_by на std::slice::MutableSliceAllocating или sort_by на collections::vec::Vec задокументированы, чтобы "распределить приблизительно 2 * n, где n – длина" . Я не думаю, что хорошие реализации C++ std::sort...
884 просмотров
schedule 09.02.2023

Копирование динамически размещенного массива в больший массив без утечки памяти
Я пытаюсь увеличить размер двух моих динамически выделяемых массивов указателей на единицу, поэтому я создаю временные массивы, копирую свои старые значения, удаляю оригиналы и затем переназначаю их. Код компилируется и работает нормально, но я...
909 просмотров

Массив Fortran автоматически увеличивается при добавлении значения
Есть ли способ эмулировать растущий массив в Fortran? Как вектор в C++. Я был очень удивлен, когда не нашел ничего на эту тему в Интернете. В качестве мотивационного примера предположим, что я вычисляю некоторое рекуррентное соотношение и хочу...
1699 просмотров
schedule 13.07.2022

Куча не освобождается в C
Это мой фрагмент кода. Я получаю сообщение об ошибке при попытке освободить выделенную память. int main() { int value = 10; totValues = pow(2, value); head = (node_t *)calloc(totValues, sizeof(node_t)); createNode(head, 10, 20);...
65 просмотров
schedule 10.01.2023

Динамически выделяемый массив структур, передаваемых в функцию и доступ к которым осуществляется с помощью индексации.
Я пытаюсь динамически выделить массив структур, передав указатель на функцию. Мне нужно получить доступ к массиву с помощью индексации. У меня есть аналогичный процесс, работающий без перехода к функции. У меня есть простая структура под названием...
422 просмотров
schedule 11.04.2024

Как проверить, был ли инициализирован указатель как член данных в классе на С++?
У меня есть элемент данных в классе, который является указателем. Кроме того, у меня есть функция установки для динамического выделения этого указателя, скажем, для целей динамического массива. Перед установкой новых значений мне нужно удалить этот...
82 просмотров

unordered_map: clear() не освобождает кучу при clear()
Я использую unordered_map с помощью g++ 4.9.2 на Solaris 10, но неожиданно обнаружил, что clear() не освобождает кучу. Вот пример кода: #include <iostream> #include <unordered_map> int main () { std::unordered_map<long long,...
4546 просмотров

изменение указателя динамически размещаемого массива
Когда мы динамически объявляем что-то вроде этого int *ptr = new int [100]; а затем измените адрес указателя (т.е. укажите его на что-то другое) int pointer[5] = {1,2,1,3,1,}; ptr = pointer ; что теперь происходит с той памятью,...
2755 просмотров

Использование realloc путем умножения целого числа указателя и sizeof (int) не работает
Код: void main() { int *array = calloc(5, sizeof(int)); int *amount = 9; array[0] = 1; array[1] = 2; array[3] = 5; int i = 0; while (i < 5) { printf("%d ", array[i]); i += 1; } printf("%d",...
292 просмотров

Размещение переменных внутри динамически размещаемых структур
Предположим, что у вас есть структура, содержащая указатель на массив и его размер, например: typedef struct { int * array; int arr_size; }IntArray; и хотите иметь это внутри другой структуры, это можно сделать двумя способами:...
755 просмотров
schedule 19.12.2023