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

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

Войти
Регистрация
Восстановить пароль
 
Spark.2011
Сообщений: n/a
#1

Нужен совет - C++

06.12.2011, 18:12. Просмотров 426. Ответов 2
Метки нет (Все метки)

Вообщем написал программу, вкратце : сущ-ет класс человек, а классы менеджер, рабочий и ученый наследуют его св-ва. Нужно обратиться к закрытым данным private от класса менеджера. В теории знаю как это сделать, но на практике не получается. Для этого нужно объявить класс менеджер другом - friend

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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
#include <iostream> 
#include <string> 
using namespace std; 
/////////////////////////////////////////////////////////// 
class man 
 
{ 
private: 
string school; 
string degree; 
 
public: 
 
void getedu ( ) 
{ 
 
cout << " Введите название учебного заведения "; 
cout << " (КарГТУ, КарГУ, КарМУ, КЭУ): "; 
cin >> school; 
cout << " Введите уровень образования\n"; 
cout << " (неполное высшее, бакалавр, магистр, кандидат наук): "; 
cin >> degree; 
} 
void putedu ( ) const 
{ 
cout << "\n Учебное заведение: " << school; 
cout << "\n Степень: " << degree; 
} 
 
 
}; 
/////////////////////////////////////////////////////////// 
class employee 
{ 
private: 
string name; 
unsigned long number; 
public: 
void getdata ( ) 
{ 
cout << "\n Введите фамилию: "; cin >> name; 
cout << " Введите номер: "; cin >> number; 
 
} 
void putdata ( ) const 
{ 
cout << "\n Фамилия: " << name; 
cout << "\n Номер: " << number; 
} 
 
}; 
/////////////////////////////////////////////////////////// 
class manager 
{ 
private: 
string title; 
double dues; 
employee emp; 
man stu; 
public: 
void getdata ( ) 
{ 
emp.getdata ( ); 
cout << " Введите должность: "; cin >> title; 
cout << " Введите сумму взносов в гольф-клуб: "; cin >> dues; 
 
stu.getedu ( ); 
} 
void putdata ( ) const 
{ 
emp.putdata ( ); 
cout << "\n Должность: " << title; 
cout << "\n Сумма взносов в гольф-клуб: " << dues; 
stu.putedu ( ); 
} 
}; 
/////////////////////////////////////////////////////////// 
class scientist 
{ 
private: 
int pubs; 
employee emp; 
man stu; 
public: 
void getdata ( ) 
{ 
emp.getdata ( ); 
cout << " Введите количество публикаций: "; cin >> pubs; 
stu.getedu ( ); 
} 
void putdata ( ) const 
{ 
emp.putdata ( ); 
cout << "\n Количество публикаций: " << pubs; 
stu.putedu ( ); 
} 
}; 
/////////////////////////////////////////////////////////// 
class laborer 
{ 
private: 
employee emp; 
public: 
void getdata ( ) 
{ emp.getdata ( ); } 
void putdata ( ) const 
{ emp.putdata ( ); } 
}; 
/////////////////////////////////////////////////////////// 
int main ( ) 
{ 
setlocale (0, "rus"); 
manager m1; 
scientist s1; 
laborer l1; 
 
// введем информацию о нескольких сотрудниках 
cout << endl; 
cout << "\nВвод информации о первом менеджере"; 
m1.getdata ( ); 
 
cout << "\nВвод информации о первом ученом"; 
s1.getdata ( ); 
 
cout << "\nВвод информации о первом рабочем"; 
l1.getdata ( ); 
 
// выведем полученную информацию на экран 
cout << "\nИнформация о первом менеджере"; 
m1.putdata ( ); 
 
cout << "\nИнформация о первом ученом"; 
s1.putdata ( ); 
 
cout << "\nИнформация о первом рабочем"; 
l1.putdata ( ); 
 
cout << endl; 
 
system("pause"); 
}
}
 Комментарий модератора 
Используйте теги форматирования кода!


P.S.: пробовал по разному. Мне без разницы что объявлять другом.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2011, 18:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нужен совет (C++):

нужен совет!!! - C++
блин скачала еле как этот си...dev c++....ввожу программу и нажимаю компелировать...он компелирует видимо и ничего не выдает...кроме того...

Нужен совет - C++
Всем добрый день. Кто нибудь может поделиться компилятором Турбо Си++ или каким нибудь другим ...? Или подсказать где можно...

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

Нужен совет - C++
Хочу начать изучать С++. Посоветуйте какие-нибудь книги или самоучители. Учить буду с нуля. До этого немного учил Паскаль, но понял, что...

Нужен совет! - C++
Народ вот у меня вопрос если я прочитаю книгу &quot;Программирование. Принцыпы и практика использования C++&quot; и кое что не пойму то стоит ли...

Нужен совет! - C++
Здравствуйте уважаемые! Подскажите пожалуйста книгу по С++ , чтобы в ней толком обьяснялось про такие детали, как к примеру _WIN32_WINDOWS...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
bretba
63 / 58 / 5
Регистрация: 24.07.2011
Сообщений: 343
07.12.2011, 00:59 #2
не очень понятно что именно ты хочешь заимствовать от класса человек?
0
Spark.2011
Сообщений: n/a
07.12.2011, 14:12 #3
Цитата Сообщение от bretba Посмотреть сообщение
не очень понятно что именно ты хочешь заимствовать от класса человек?
Например cout << "\n Степень: " << degree; для класса мэнеджер
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2011, 14:12
Привет! Вот еще темы с ответами:

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

нужен совет по выводу - C++
короче смотрите есть допустим во такой цикл for (int i=1;i&lt;=20;i++) { } в цикле надо сделать вывод i и выглядить он должен вот так ...

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

Нужен хороший совет! - C++
Всем привет! Народ всем привет у меня вопрос вот я хочу связать свою жизнь с game-developingom(для этого я учу c++ и в скором времени...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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