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

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

Войти
Регистрация
Восстановить пароль
 
feniks
0 / 0 / 0
Регистрация: 16.12.2012
Сообщений: 31
#1

Оформить функции в виде методов класса - C++

14.01.2014, 19:17. Просмотров 266. Ответов 4
Метки нет (Все метки)

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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
 
struct Stack
{
    int data;
    struct Stack *next;
};
 
typedef struct Stack StackN;
typedef StackN *StackPtr;
 
void push( StackPtr *,int);
int pop(StackPtr*);
int isEmpty(StackPtr);
void printStack(StackPtr);
void instructions(void);
 
 
/*вставить значение в вершину стека*/
void push(StackPtr *top, int info)
{
    StackPtr newP; 
    newP=(StackPtr)malloc(sizeof(StackN));
    if(newP!=NULL) 
    {
        newP->data=info;
        newP->next=*top;
        *top=newP;
    }
    else
        printf("%d Ошибка. Недостаточно памяти.\n",info);
}
 
/*стек пуст?*/
int isEmpty(StackPtr top)
{
    return top==NULL;
} 
 
int main()
{
    setlocale(LC_CTYPE, "Russian_Russia.1251");
    StackPtr stackPtr=NULL; /*указывает на вершину стека*/
    int choice, value;
    instructions();
    printf("?");
    scanf("%d",&choice);
 
    while(choice!=3) 
    {
        switch(choice){
case 1:   /*затолкнуть значение в стек*/
    printf("Введите целое число: ");
    scanf("%d", &value);
    push(&stackPtr, value);
    printStack(stackPtr);
    break;
case 2: /*вытолкнуть значение из стека*/
    if(!isEmpty(stackPtr))
        printf("Удалить значение %d.\n", 
        pop(&stackPtr));
    printStack(stackPtr);
    break;
default:
    printf("Неверный выбор.\n\n");
    instructions();
    break;
        }
        printf("?");
        scanf("%d", &choice);
    }
    printf("Завершение.\n");
    return 0;
}
 
/*вывести инструкции*/
void instructions(void)
{
    printf("Введите выбор:\n"
        "1  Добавить новый элемент в стек\n"
        "2  Удалить элемент из стека\n"
        "3  Завершить работу программы\n");
}
 
/*удалить значение из вершины стека*/
int pop(StackPtr *top)
{
    StackPtr temp; 
    int popValue;
    temp=*top;
    popValue=(*top)->data;
    *top=(*top)->next;
    free(temp);
    return popValue;
}
 
/*распечатать содержимое стека*/
void printStack(StackPtr current)
{
    if(current==NULL)
        printf("Стек пуст\n\n");
    else {
        printf("Стек:");
 
        while(current!=NULL){
            printf("%d ",current->data);
            current=current->next;
        }
        printf("NULL\n\n");
    }
}
Нужно функции запихнуть в классы, проблема в том, что в классах я ничего не понимаю. Подскажите как это сделать, пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2014, 19:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Оформить функции в виде методов класса (C++):

Вычислить m значений функции f(x) на отрезке [a, b]. Вычисление величины f(x) оформить в виде функции - C++
Составить программу решения поставленной задачи: Вычислить m значений функции f(x) на отрезке . Вычисление величины f(x) оформить в виде...

Оформить в виде функции - C++
Добрый вечер, нужно оформить программу в виде функции. Вроде все правильно сделал. но не могу понять на что ругается программа...#include...

Оформить в виде функции - C++
Оформить в виде функции на C/C++ решение задачи: b_i = a_i \,- \,(\min_{1\leq j\leq n}a_j) \\i = 1, 2 .. n #include &lt;ctime&gt; ...

Оформить в виде функции - C++
Помогите пожалуйста, вот задание: Оформить каждый пункт задания в виде функции. Все необходимые данные для функции должны передаваться им...

Оформить в виде функции - C++
Даны действительные числа s, t. Получить: g(1.2, s)+g(t, s)-g(2s - 1.5t), |g(ln(s, t+1))-g(t, s)|, где

Оформить обработку в виде функции - C++
Здравствуйте. Помогите записать код программы с помощью функций, заранее благодарен!!! #include &lt;fstream&gt; #include &lt;iostream&gt; using...

4
0x10
14.01.2014, 19:20
  #2

Не по теме:

Цитата Сообщение от feniks Посмотреть сообщение
в классах я ничего не понимаю
Цитата Сообщение от feniks Посмотреть сообщение
Подскажите
Уточняющий вопрос: подсказать или сделать за Вас?

0
feniks
0 / 0 / 0
Регистрация: 16.12.2012
Сообщений: 31
14.01.2014, 19:23  [ТС] #3
Подсказать хороший пример, на котором было бы понятно расписано простым языком, литературу. Плюс для моего примера возможно есть какие-либо примечания, которые следует учесть.
0
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
14.01.2014, 19:25 #4
feniks, http://code-live.ru/post/cpp-classes/
0
0x10
2465 / 1637 / 239
Регистрация: 24.11.2012
Сообщений: 4,036
14.01.2014, 19:27 #5
По литературе: отсюда (Литература C++) любая книга из первого блока, глава про классы.
По теме: пишете класс, внутри которого в приватной части будет указатель на вершину стека. Он у вас сейчас передается первым аргументом в каждую функцию. Функции делаете публичнми методами класса - т.о. у них остается доступ к указателю top и необходимость в первом параметре пропадает. На этом переписывание заканчивается, остается только разобраться с синтаксисом. Примеры есть в книгах.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.01.2014, 19:27
Привет! Вот еще темы с ответами:

Оформить задачу в виде функции - C++
Всем привет. Не понимаю, что нужно делать. Пожалуйста помогите! Выполнить задания третьего семинара ( Одномерные массивы ) и четвертого...

Оформить решение в виде функции - C++
#include &lt;iostream&gt; using namespace std; int main() { int C =...

Оформить в виде функции на C++ решение задачи - C++
Добрый вечер! Помогите решить задачу на C++. (Среда компилирования: Turbo C++ в DOS BOX) {b}_{i}= \prod_{j}^{i}{a}_{j} где i=1,2,3...,n ...

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


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

Или воспользуйтесь поиском по форуму:
5
Yandex
Объявления
14.01.2014, 19:27
Ответ Создать тему
Опции темы

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