Форум программистов, компьютерный форум CyberForum.ru

Утечка памяти (Expression: _CrtIsValidHeapPointer(pUserData)) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Дано целое число в диапазоне 10–40 http://www.cyberforum.ru/cpp-beginners/thread565037.html
Дано целое число в диапазоне 10–40, определяющее количество учебных заданий по некоторой теме. Вывести строку-описание указанного количества заданий, обеспечив правильное согласование числа со словами «учебное задание», например: 18 — «восемнадцать учебных заданий», 23 — «двадцать три учебных задания», 31 — «тридцать одно учебное задание».
C++ Соединение строки с числом Есть строка char* a = "str". Как можно соединить ее с числом, чтобы получилось str1, str2 ... strN? Т.е. все это проходит в цикле. Пробовал strcat и strcpy, но не получается. http://www.cyberforum.ru/cpp-beginners/thread565030.html
C++ Заполнение и сохранение массива структур не работает...
Я хочу сделать справочник кулинарных рецептов, (в него входит: название рецепта, ингредиенты(это у меня и вызывает затруднение) и приготовление). Все было бы хорошо, НО ингредиентов может быть несколько, и в каждом рецепте их число может меняться... Как это реализовать? Я думал что через структуру, но выдает странные ошибки... struct files { char Name; char Recept; int nkeys; } File;
C++ Параллельные вычисления MPI
Всем привет, ребят объясните пожалуйста почему работает не корректно ? задание такое : нужно посчитать сумму элементов 2х массивов, число элементов произвольное, число процессов тоже. вычисление суммы необходимо разбить на процессы, а потом что бы каждый процесс передал свою частную сумму на 0ой процесс который собственно и выведет результат на экран, вот что сам написал. если задаю 2...
C++ Дано предложение. Создать файл и записать в него все символы данного предложения, отличные от цифр. Вывести содержимое файла на экран http://www.cyberforum.ru/cpp-beginners/thread565013.html
Ребята, помогите, пожалуйста!
C++ Непонятны некоторые операторы Читал, читай книгу по C++. Что понял что нет. Пожалуйста помогите с такими вопросами: - Для чего нужна операция "?:" ?, я этого не понял. - пожалуйста обьясните русским языком что такое перегрузка операции... Ничего не понял по этому поводу. -пожалуйста обьясните про работу операций New и Delete и чем они отличаются от обычного обьявиения переменной? Пишите не стесняйтесь, буду рад абсолютно... подробнее

Показать сообщение отдельно
Avazart
Заблокирован
09.05.2012, 02:37     Утечка памяти (Expression: _CrtIsValidHeapPointer(pUserData))
Bers,Тут проблема в самом "умном" указателе, а не в деструкторе, да и к данному случаю это не имеет никакого отношения, поэтому моё утверждение верно.
(Сам умный указатель подразумевает динамическое создание)

Представим себе, что деструктор ClassA::~ClassA мы не определяли (его тело пустое, т.к. за автоматичское удаление содержимого указателей m_shared и m_scoped отвечают деструкторы умных указателей). Итак, деструктор мы не определяли, а это значит, что его за нас должен сгенерировать компилятор. Где он это сделает? Очевидно, что при компиляции файла main.cpp, деструктор для ClassA понадобиться при выходе из тела функции main(). Значит, именно здесь будет генерироваться тело ~ClassA, которое, в свою очередь, потянет за собой генерацию тел деструкторов для шаблонов shared_ptr и scoped_ptr для типа ClassB, которые в своем теле будут вызывать delete для указателей этого типа. Который (смотрим внимательно) в этой точке у нас является неполным типом.
Ага, приплыли.

Что произойдет, если мы попытаемся собрать приведенный код без деструктора?
Мы увидим, как добрые люди, писавшие умные указатели для boost, позаботились о нас.
Источник http://ru-cpp.livejournal.com/369997.html

Добавлено через 9 минут
Как можно использовать методы SetInformation и ShowInformation класса HeatingSystemв в функции main?
Ну вам виднее как их использовать вы ведь писали класс?
Не понимаю, в чем вопрос?
C++
1
2
3
4
5
6
7
8
int main()
{
    HeatingSystem heatingSystem; 
 
    heatingSystem.SetInformation();
    heatingSystem.ShowInformation();
return 0;
}
 
Текущее время: 16:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru