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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Visual studio 2010 не обновляет вывод программы http://www.cyberforum.ru/cpp-beginners/thread270457.html
создаю приложение windows forms закидываю в форму кнопочки и т.д, проверяю F5 - все рабодаю, корректирую код, нажимаю F5 , а он изменения не учитывает и постоянно выводит , что выводило в первый раз, даже весь код удаляю , а он продолжает все выводить и выводить.
C++ Генерация псевдослучайных чисел!!! Помогите кто чем может!!пожалуйста! Составьте программу, реализующую линейный конгруэнтный ГПСЧ, и способную генерировать случайные числа как по одному (с выводом на экран), так и последовательностью произвольной длины (с записью в файл). Значения параметров a, b и c0 должны генерироваться случайным образом, но без использования ГПСЧ и стандартного генератора языка программирования. Необходимо... http://www.cyberforum.ru/cpp-beginners/thread270456.html
C++ Программирование WiFi
Доброго времени суток. Возникла проблема. Необходимо программно обработать сигнал, который поступает на компьютер по вайфаю от мобильного телефона. Гугл не даёт практически никаких результатов. Помогите! Если не затруднит, то напишите пожалуйста пример кода. Заранее спасибо.
C++ не могу решить в С++
помогите пожалуйста решить задачку, очень нужно(((((( я понял, что задачу нужно решать как массив, но тут я столкнулся с проблемой, поскольку очень сложна для меня, очень много условий в этой задачке • к примеру, как показано на рисунке значение в массиве при X = 0, а Y =10 будет = 0, затем при изменяющемся X и постоянном Y значение будет расти и в точке массива при X = 6, а Y =10 значение...
C++ как будет выглядеть в Visual C++ http://www.cyberforum.ru/cpp-beginners/thread270410.html
void __fastcall TForm1::Memo1DblClick(TObject *Sender) { OpenDialog1->Execute(); //Загружаем данные их файла Memo1->Lines->LoadFromFile(OpenDialog1->FileName); //Устанавливаем признак того, что документ не менялся bDirty=false; }
C++ Вложенные циклы Дано натуральное число n и вещественное число x. Вычислить \sum_{j=1}^{n}((2i)!+|x|)/({i}^{2})! подробнее

Показать сообщение отдельно
gGrn-7DA
мну довольно <(-__-)l
203 / 192 / 1
Регистрация: 17.01.2010
Сообщений: 2,392
Завершенные тесты: 1
06.04.2011, 17:24  [ТС]
Нет я стек с 1 элементом хочу записать в пустой стек стеков.
_st - всегда будет иметь хотя бы один элемент в себе..


разобрался
C++
1
2
3
    stack<stack<unsigned int> *> *temp=new stack<stack<unsigned int> *>();
    stack<unsigned int> *_st=new stack<unsigned int>();
    temp->in(_st);
так работает...хз почему)

Добавлено через 1 час 27 минут

Не по теме:

Как же жить без ошибок? можно, но невозможно - обязательно ошибешься...



мой стек съедает первую половину элементов.
то есть такой код:
C++
1
2
3
4
5
6
7
    stack<int> *st=new stack<int>();
    for(int i=0;i<15;i++)
    st->in(i);
    unsigned int g;
    int *m=st->Release(&g);
    for(int j=0;j<g;j++)
    std::cout << m[j] << " ";
выводит:
C++
1
14 13 12 11 10 9 8 7 0 0 0 0 0 0 0
а должен:
C++
1
14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Как объяснить стеку, что есть чужие байты не хорошо?(

Добавлено через 1 минуту
ну и сам файл stack.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
template <class Type>
class Member{
public:
    Member(Type value, Member<Type> **member);
    ~Member();
    Type GetValue(){
        return _value;
    }
    Member<Type> *_member;
private:
    Type _value;
};
 
template <class Type> class stack{
public:
    stack();
    ~stack();
    int count();
    int in(Type value);
    Type out();
    Type see();
    Type * Release(unsigned int *length);
private:
    Member<Type> *_member;
    unsigned int _count;
 
};
 
//-----=---==-=== class Member ===-==---=-----
 
template <class Type> Member<Type>::Member(Type value, Member<Type> **member){
    _value=value;
    _member=*member;
}
 
template <class Type> Member<Type>::~Member(){
    delete _member;
}
 
//-----=---==-=== class stack ===-==---=-----
 
template <class Type> stack<Type>::~stack(){
    delete _member;
}
 
template <class Type> stack<Type>::stack(){
    _count=0;
    _member=NULL;
}
 
template <class Type> int stack<Type>::count(){
    return _count;
}
 
template <class Type> int stack<Type>::in(Type value){
    Member<Type> *member=new Member<Type>(value, &_member);
    _member=member;
    return ++_count;
}
 
template <class Type> Type stack<Type>::out(){
        if(_count>0)_count--;
        Type value=_member->GetValue();
        Member<Type> *member=_member->_member;
        _member->_member=NULL;
        delete _member;
        _member=member;
        return value;
}
 
template <class Type> Type stack<Type>::see(){
    return _member->GetValue();
}
 
template <class Type> Type * stack<Type>::Release(unsigned int *length){
    Type *array=new Type[*length=_count];
    for(int i=0;i<_count;i++)
        array[i]=this->out();
    return array;
}
Добавлено через 2 минуты
вот где ошибка( внимательнее надо быть)
C++
1
    for(int i=0;i<_count;i++)//77 строка
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru