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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Visual studio 2010 не обновляет вывод программы http://www.cyberforum.ru/cpp-beginners/thread270457.html
создаю приложение windows forms закидываю в форму кнопочки и т.д, проверяю F5 - все рабодаю, корректирую код, нажимаю F5 , а он изменения не учитывает и постоянно выводит , что выводило в первый...
C++ Генерация псевдослучайных чисел!!! Помогите кто чем может!!пожалуйста! Составьте программу, реализующую линейный конгруэнтный ГПСЧ, и способную генерировать случайные числа как по одному (с выводом на экран), так и... http://www.cyberforum.ru/cpp-beginners/thread270456.html
C++ Программирование WiFi
Доброго времени суток. Возникла проблема. Необходимо программно обработать сигнал, который поступает на компьютер по вайфаю от мобильного телефона. Гугл не даёт практически никаких результатов....
C++ не могу решить в С++
помогите пожалуйста решить задачку, очень нужно(((((( я понял, что задачу нужно решать как массив, но тут я столкнулся с проблемой, поскольку очень сложна для меня, очень много условий в этой...
C++ как будет выглядеть в Visual C++ http://www.cyberforum.ru/cpp-beginners/thread270410.html
void __fastcall TForm1::Memo1DblClick(TObject *Sender) { OpenDialog1->Execute(); //Загружаем данные их файла Memo1->Lines->LoadFromFile(OpenDialog1->FileName); //Устанавливаем признак того,...
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 строка
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru