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

классы - C++

Восстановить пароль Регистрация
 
Lana777
0 / 0 / 0
Регистрация: 30.05.2010
Сообщений: 7
14.10.2010, 14:26     классы #1
Всем привет!!! Нужна помощь!!!
Необходимо описать класс стеки!!!
Заранее благодарна за помощь!!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2010, 14:26     классы
Посмотрите здесь:

C++ Классы
Классы C++
C++ КЛАССЫ
C++ Классы
классы C++
Классы C++
Классы в С++ C++
C++ Классы в c++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
LineStown
 Аватар для LineStown
63 / 63 / 3
Регистрация: 04.08.2010
Сообщений: 399
14.10.2010, 15:03     классы #2
Описывай!!!! Это не сложно!!!!С чегото нужно начинать!!!!
Zerkalka
 Аватар для Zerkalka
37 / 36 / 2
Регистрация: 09.03.2010
Сообщений: 79
14.10.2010, 15:16     классы #3
Посмотри это.. может поможет..
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
81
82
#include "stdafx.h"
#include "malloc.h"
 
class Stack
{
private:
    char* _data;
    int _dataSize;
    int _count;
           //realocateIfNeeded - перераспределение памяти
    void realocateIfNeeded(int _countNeeded)
    {
        if (_countNeeded>_dataSize)
        {
            if (_dataSize==0) { _dataSize = 1; }
            while (_dataSize<_countNeeded)
            {
                _dataSize *= 2;
            }
            _data = (char*)realloc(_data,_dataSize*sizeof(char));
        }
        if ((_countNeeded<=(_dataSize/2))&&(_dataSize>0))
        {
            while (((_dataSize/2)>=_countNeeded)&&(_dataSize>0))
            {
                _dataSize /= 2;
            }
            _data = (char*)realloc(_data,_dataSize*sizeof(char));
        }
    }
public:
    Stack()
    {
        _data = NULL;
        _dataSize = 0;
        _count = 0;
    }
    ~Stack()
    {
        if (_dataSize!=0)
        {
            free(_data);
        }
    }
    void Push(char Value)
    {
        realocateIfNeeded(_count+1);
        _data[_count] = Value;
        _count++;
    }
    char Pop()
    {
        if (_count==0) { throw; }
        char value = _data[_count-1];
        realocateIfNeeded(_count-1);
        _count--;
        return (value);
    }
    int Count()
    {
        return _count;
    }
};
 
int main(int argc, char* argv[])
{
// Здесь сделай свой пример работы со стеком
 
    Stack s;
    s.Push('A');
    s.Push('B');
    s.Push('C');
    s.Push('D');
    printf(" %c  - %u\n",s.Pop(),s.Count());
    s.Push('E');
    printf(" %c  - %u\n",s.Pop(),s.Count());
    printf(" %c  - %u\n",s.Pop(),s.Count());
    printf(" %c  - %u\n",s.Pop(),s.Count());
    printf(" %c  - %u\n",s.Pop(),s.Count());
    printf("     - %u\n",s.Count());
    return 0;
};
Yandex
Объявления
14.10.2010, 15:16     классы
Ответ Создать тему
Опции темы

Текущее время: 11:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru