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

Стек и освобождение памяти - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Переход из арифметического представления в функциональное представление http://www.cyberforum.ru/cpp-beginners/thread270378.html
Переход из арифметического представления в функциональное представление,нужно написать на C++ Builder 6 ? Я к сожалению не знаю как это делать, а сдать нужно... Заранее спасибо!
C++ подскажите книгу или какой-либо другой источник Здравствуйте.Хочу попробывать,в учебных целях,написать свои методы подсоединения к СУБД(например провайдер как в Ado.Net,метод наподобе Connection и других.Разработать провайдер наподобе ODBC).Понял что для этого нужно подробно изучить работу сетевых протоколов TCP/IP и других протоколов,а также сетевых технологий. Пожалуйста,подскажите какую-нибудь хорошую и доступную литературу для ришения... http://www.cyberforum.ru/cpp-beginners/thread270260.html
Задание с текстовым файлом. C++
помогите, пожалуйста написать прогу. определить баланс скобок ( ) { } в программе на си есть пример с морзе http://zalil.ru/30798712
C++ Статические массивы
int a; cout << sizeof(a) << endl; cout << a << endl; Добрый день. Почему выводится, что sizeof(a)=16 байт. a же это адрес, т.е. = 4 байта, а не размер массива. P.S. буду рад за направление на литературу по памяти, где есть объяснения по стэкам, кучам и т.д.
C++ Как сделать так чтобы простейшая программа запускалась сначало http://www.cyberforum.ru/cpp-beginners/thread270009.html
Предположим есть самая простая программа: #include <iostream> using namespace std; #include <cmath> int main() { double c; cout << "Enter a number of points: "; cin >> c; double wer = c - 1;
C++ realloc Столкнулся с проблемой при значениях nStgElm близких к 1000 происходит ошибка выеления памяти WIN32_FIND_DATA * pDATA = (WIN32_FIND_DATA *)malloc(sizeof(WIN32_FIND_DATA)); pDATA = (WIN32_FIND_DATA *)realloc ( (void *)pDATA, sizeof(WIN32_FIND_DATA)*(2 + (nStgElm++)) ); Кто знает другой механизм динамического выделения памяти???Число элементов заранее не известно и... подробнее

Показать сообщение отдельно
gGrn-7DA
мну довольно <(-__-)l
 Аватар для gGrn-7DA
203 / 192 / 1
Регистрация: 17.01.2010
Сообщений: 2,391
Завершенные тесты: 1
06.04.2011, 10:58  [ТС]     Стек и освобождение памяти
Цитата Сообщение от ForEveR Посмотреть сообщение
Вообще по сути Удалять и возвращать должны два разных метода.
Возможно, в стандарты не углублялся пока. А само освобождение памяти работать будет, нигде хвосты не останутся?

Цитата Сообщение от ForEveR Посмотреть сообщение
Да и вообще. Не стоит так с указателями играться...
С чем хочу с тем играю. И оно кроме всего должно еще и работать)
Цитата Сообщение от ForEveR Посмотреть сообщение
И вообще, шаблонные классы стоит и определять и описывать в одном файле (в хедере).
Приму к сведениям) - помогло избаиться от ерроров)

Добавлено через 5 часов 51 минуту
в продолжение темы. привыполнении этой строки из определения stack<Type>::out()
C++
1
    Member<Type> member=*_member->_member;
Выходит ошибка Segmentation fault.
В чем ошибка может заключается и как ее исправить?
От игр с указателями не откажусь ни за что!)

Добавлено через 36 минут
Вот исправленный код ошибки, возникавшей при разименовании NULL....

Добавлено через 10 секунд
C++
1
2
3
4
5
6
7
8
9
template <typename Type> Type stack<Type>::out(){
    _count--;
    Type value=_member->GetValue();
    Member<Type> *member=_member->_member;
    _member->_member=NULL;
    delete _member;
    _member=member;
    return value;
}
Добавлено через 13 часов 33 минуты
C++
1
2
3
Я использую два таких стека.
    stack<stack<unsigned int> > *temp=new stack<stack<unsigned int> >();
    stack<unsigned int> *_st=new stack<unsigned int>();
При выполнении
C++
1
    temp->in(*_st);
Вылетает ошибка glibc - double free or coruption.
_st инициализирован и количество элементов в нем равно 1. temp тоже инициализирован и кол элементов в нем =0...

Добавлено через 6 минут
самое странное, что ошибка вылетает уже после выполнения метода, но до следующей строчки кода...

Добавлено через 8 минут
сам метод возвращает правильное значение количества элементов, как и должен делать...
стек обычных элементов так не вылетает, это наблюдается только при добавлении в стек стеков...
 
Текущее время: 10:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru