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

Не обращается к функции из класса. Проект телефонная книга - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка при компиляции http://www.cyberforum.ru/cpp-beginners/thread975978.html
Такая вот ситуация. Мне нужно сделать так, чтобы в TMemo1 выводилось всё, что выглядит вот так: href="word", а точнее переменная word... Ниже дан исходный код. Помогите, плиз...
C++ Проблемы с кракозябрами Здравствуйте. Понимаю, что это самый задаваемый вопрос, но после многих усердных попыток что-то сделать, ничего не выходит. Делал почти все, что нашел в гугле: от setlocale до system ("chcp... http://www.cyberforum.ru/cpp-beginners/thread975974.html
C++ Цикл: Найти первое нечетное и второе четное избыточное число
ребят помогите пожалуйста решить задачу Найти первое нечетное и второе четное избыточное число (избыточное число - положительное целое число n, сумма положительных делителей которого превышает...
Cin.get C++
Как сделать чтобы cin.get считывал числа а не символы, т.е. вот код { int a, b, c; int i; int z; for(i=0; i<5; i++){ z=cin.get(); if(z== 'A') ...
C++ Правильность данных http://www.cyberforum.ru/cpp-beginners/thread975933.html
Дан фрагмент кода: int main() { int a, b, c; int i; char z; for(i=0; i<5; i++){ cin >> z; if(z== 'A') z=-1;
C++ Найти периметр и площадь треугольника в C ++. 10. Треугольник задан координатами (x1, y1), (x2, y2), (x3, y3) своих вершин. Найти периметр и площадь треугольника подробнее

Показать сообщение отдельно
Strangerr
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 8
13.10.2013, 12:37  [ТС]
Код:

Class.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
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
class phonebook
{
    char name[20];
    int phone;
    char comments[50];
public:
    char dataStr[150];
    phonebook(char*, int, char*, char*);//конструктор
    //~phonebook();//деструктор
    void showMessage(void); 
};
 
 
phonebook::phonebook(char* name, int phone, char* comments, char* dest)//конструктор объектов класса phonebook
{
    strcpy(dest, name);
    char phoneStr[10];
    itoa(phone, phoneStr, 10);
    strcat(dest, phoneStr);
    strcat(dest, comments);
}
 
/*phonebook::~phonebook()
{
    cout<<"Деструктор класса phonebook"<<endl;
}*/
 
 
void phonebook::showMessage(void)
{
    cout<<"Ваша запись:"<<dataStr<<endl;
}
 
 
class phonebook_card : public phonebook//наследование 
{
    int checked_out;
    char catalog[50];
public:
    int i;
    phonebook_card(char*, int, char*, char*, int);//конструктор 
    //~phonebook_card();//Деструктор
    void show_card(void);
    static void change_number_of_row(int);
    static int add_element(char*, int, char*);
};
 
phonebook_card::phonebook_card(char* name, int phone, char* comments, char* catalog, int checked_out)
    :phonebook(name, phone, comments, dataStr)//конструктор объектов класса phonebook_card вызывает конструктор phonebook для инициализации элементов класса phonebook
{
    strcpy(phonebook_card::catalog, catalog);
    phonebook_card::checked_out=checked_out;
    strcat(catalog, dataStr);
}
 
/*phonebook_card::~phonebook_card()
{
    cout<<endl<<"Деструктор класса phonebook_card"<<endl;
}*/
 
void phonebook_card::show_card(void)//весь каталог показываю
{
    showMessage();//функция-элемент класса phonebook 
    cout<<"Каталог: "<<catalog<<endl;
    if(checked_out)cout<<"Статус: занята"<<endl;
    else cout<<"Статус: свободна"<<endl;
}
 
void phonebook_card::change_number_of_row(int a)//a - номер строки, сама функция доступна для исользования пользователем, но вывод ошибки, за неимением прав!
{
            cout<<"Error! You don't have rights for it!"<<endl;
}
 
int phonebook_card::add_element(char* name, int phone, char* comments)//добавляем эллементы в строку
{
            int j=0;
            int rest=0;
            int i;
            cout<<"Put full name: ";
            cin>>name;
            do
            {
                i=0;
                cout<<"Put phone number (only 7 numbers!!): ";
                cin>>phone;
 
                int phone2=phone;
                while(phone2>0)//считаем колличество цифр в phone
            {
                phone2/=10;
                i++;
            }
 
                if(i<7 || i>7)
                {
                    cout<<"Incorrect phone number!"<<endl;
                    j=1;
                }
                else if(i==7)
                {
                    j=2;
                }
            }
            while(j != 2);
            cout<<"Put comments: ";
            cin>>comments;
            cout<<endl;
 
            return phone;
}
Main.cpp
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
#include<iostream>;
#include <fstream>
#include <iomanip>
using namespace std;
#include "classs.h"
 
int main()
    {
 
        setlocale(LC_ALL, "Russian");//для русского языка
        int phone=0;
        char name[20];
        char comments[50];
        char catalog[50];//сама телефонная книга
 
        int i=0;
        int number=0;
        int numb_row=0;
        int choice=0;
 
        do
        {
            cout<<"*****Phone Book*****"<<endl;
            cout<<"1) Add New Record"<<endl;
            cout<<"2) Display a Record"<<endl;
            cout<<"3) Display all Records"<<endl;
            cout<<"4) Change the number of the row"<<endl;
            cout<<"5) Exit"<<endl;
            cout<<"Choose your choice : ";
            cin>>choice;
            switch(choice){
                case 1:
                        {
                        cout<<"Set information: "<<endl;
                        int telephone;
                        telephone=phonebook_card::add_element(name, phone, comments);//отправляем для добавление строки
                        phonebook_card card(name,telephone,comments, &catalog[i],1);//добавляем строку в каталог
                        card.showMessage();//выводим на экран
                        i++;
                        }
                        break;
                case 2:
                        cout<<"Put the number of the row you want to see: "<<endl;//проблема
                        cin>>numb_row;
                        
                        break;
                case 3:
                        cout<<"Your Phone Book: "<<endl;//проблема
                        phonebook_card show_card(.....?);//[B]к какой функции обратиться для вывода [/B]каталога? 
                        break;
                case 4:
                        cout<<"What number do you want to change?"<<endl;
                        cin>>number;
                        phonebook_card::change_number_of_row(number);//выводим ошибку за неимением прав для изменение строки
                        break;
                case 5:
                        exit(0);
        }
            system("pause");
            system("cls");//очистка экрана
    }
        while(choice != 0);
        return 0;
}

Проблемы:

1) Как отобразить все записи в каталоге? (точнее к чему для этого нужно обратиться в)
C++
1
phonebook_card show_card(.....?);
2) Можно ли будет вывести конкретную запись в каталоге?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru