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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Romich41
15 / 15 / 1
Регистрация: 01.11.2009
Сообщений: 188
#1

Функции - C++

18.03.2010, 17:32. Просмотров 253. Ответов 0
Метки нет (Все метки)

Люди помогите перегрузить 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
#include <iostream>
using namespace std;
//////////////////////// 
// описание класса  
//////////////////////// 
class Stack{
private:
      int *data; //будет массив нпример для типа int
      int index, maxsize;
public:
    int x;
    Stack();                 // пустой конструктор
    Stack(float initial);    // конструктор с параметрами
    Stack(const Stack& st);    // конструктор копирования
    ~Stack() {}                  //деструктор     
    //перегрузка операций, доступ по индексу
    float   operator () (const int index_x,const int index_y); 
    // присваивание числа 
    Stack  operator +  (const float value); //добавление элемента в стек
    Stack  operator -  (const float value); //удаление элементов из стека
    bool    operator == (const Stack& st); //проверка на наличие элементов в стеке
//////////////////////// 
// реализация класса  
////////////////////////    
    
 
 //explicit Stack(int max)
 //       {
 //            index=0;
 //            maxsize=max;
 //            data = new int[maxsize];
 //       }
 //        ~Stack()
 //        {
 //             delete [] data;
 //        }
 //        int top()
 //        {
 //            return data[index];
 //         }
Stack Stack::operator + (const Stack& st) { 
  Stack tmp; 
      if (index+1<=maxsize)
               {
                   index++;
                   data[index]=x; 
               }
                else cout << "Stack overflow\n";
  return tmp; 
} 
 
Stack Stack::operator - (const Stack& st) { 
  Stack tmp; 
         if (index-1>=0)index--;
              else cout<<"Stack underflow\n";
  return tmp; 
} 
    
bool Stack::operator == (const Stack& st) { 
 return index==0;
} 
     
};
 
 
int main()
{
 //  тест написанного класса   
      return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.03.2010, 17:32     Функции
Посмотрите здесь:

Функции. Как после одного возвратного значения функции отталкиваться от возврата другой функции - C++
Написал код, в котором 2 функции одна возвращает стринговое значение, вторая должна бы вернуть значение, отталкиваясь от первой. Возможно...

excel. создать таблицу значение кусочно-непрерывной функции y на интервале [xmin; xmax] с шагом h, для расчета функции y используя логические функции - Delphi


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru