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

открытые члены класса переделать в закрытые - C++

Восстановить пароль Регистрация
 
Neznakomec
 Аватар для Neznakomec
3 / 3 / 0
Регистрация: 23.10.2012
Сообщений: 17
24.02.2013, 20:33     открытые члены класса переделать в закрытые #1
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
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
float sum=0.0; int *s; int *z; string sotr;  float zar;
class rabota
{     public: rabota()
             {cout<<"Работает конструктор\n";
             string *s=new string[];
             cout<< "Введите ФИО: \n";  cin>>sotr; 
             float *z=new float[];
             cout<< "Введите зарплату: \n";     cin>>zar;}
            ~rabota()
            {delete []s;
            delete []z;}
    void vivodspisok () 
    {   cout<< "Фамилия сотрудника: " << "    " << sotr << "\n";
        cout<< "Зарплата: " << "   " << zar << "\n"; 
        sum=sum+zar;} 
    void nepoluch () 
    { 
    if (zar == 0) 
    cout<< sotr << "  ne poluchil zarplatu \n"; 
    } 
    }; 
    int main () 
    { setlocale (LC_ALL, "Russian");
    rabota ofic1;
    ofic1.vivodspisok();
    ofic1.nepoluch();   
    rabota ofic2;
    ofic2.vivodspisok();
    ofic2.nepoluch();   
    rabota ofic3;
    ofic3.vivodspisok();
    ofic3.nepoluch(); 
 
 
    cout<< "Общая сумма выданной зарплаты " <<sum<<"\n"; 
 
    system ("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2013, 20:33     открытые члены класса переделать в закрытые
Посмотрите здесь:

статические массивы, члены класса C++
C++ Статические члены класса
класс «Строка» (данные-члены класса – строчка, функции-члены класса – операции) C++
C++ Статические члены класса
массив указателей на члены класса C++
C++ Private и public члены класса
C++ Дружественный оператор не видит закрытые члены класса
Указатели на члены класса C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
24.02.2013, 20:47     открытые члены класса переделать в закрытые #2
да тут походу вообще полей у класса нет.
и вместо них глобальные переменные.
Вопрос: Ты структуры изучал уже?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
float sum=0.0; 
class rabota
{     
string sotr; 
float zar;
public: rabota()
             {cout<<"Работает конструктор\n";
             cout<< "Введите ФИО: \n";  cin>>sotr; 
             cout<< "Введите зарплату: \n";     cin>>zar;
}
    void vivodspisok () 
    {   
         cout<< "Фамилия сотрудника: " << "    " << sotr << "\n";
        cout<< "Зарплата: " << "   " << zar << "\n"; 
      } 
    void nepoluch () 
    { 
    if (zar == 0) 
    cout<< sotr << "  ne poluchil zarplatu \n"; 
    } 
};
Это как минимум. А вообще тут всё надо переписать, начиная с того, что конструктору не следует вести на экране диалоги с пользователем.

Не по теме:

"Работает конструктор" ещё можно простить, предположив, что этот вывод сделан для отладки и демонстрации, когда вызывается конструктор.


Стоп-стоп. Я походу ещё и задания не понял. класс "работа" должен содержать массивы сотрудников???
Neznakomec
 Аватар для Neznakomec
3 / 3 / 0
Регистрация: 23.10.2012
Сообщений: 17
24.02.2013, 21:18  [ТС]     открытые члены класса переделать в закрытые #3
Мы только начали, у нас сейчас тема Классы, со структурами мы ещё не работали, пару буквально классам посвятили и уже практическая, сейчас сижу в окружении учебников. Благодарю за любую оказанную помощь.

Добавлено через 14 минут
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
#include <iostream>
#include <string>
using namespace std;
float sum=0.0;
class rabota
{    string sotr;  
     public: 
    float zar;
    void zarplata ()
    {       cout<< "Введите ФИО: \n";   cin>>sotr; 
            cout<< "Введите зарплату: \n";  cin>>zar;}
    void vivodspisok () 
    {   cout<< "Фамилия сотрудника: " << "    " << sotr << "\n";
        cout<< "Зарплата: " << "   " << zar << "\n"; 
        sum=sum+zar;} 
    void nepoluch () 
    { 
    if (zar == 0) 
    cout<< sotr << "  ne poluchil zarplatu \n"; 
    } 
    }; 
    int main () 
    { setlocale (LC_ALL, "Russian");
    rabota ofic[3];
    int i;
    for (i=0; i<3; i++)
    ofic[i].zarplata();
    for (i=0; i<3; i++)
    ofic[i].vivodspisok();
    for (i=0; i<3; i++)
    ofic[i].nepoluch();     
    for ( i=0; i<3; i++);
    sum = sum + ofic[i].zar; 
    cout << "Общая сумма выданной зарплаты " <<sum<<"\n"; 
    system ("pause");
    return 0;
}
Yandex
Объявления
24.02.2013, 21:18     открытые члены класса переделать в закрытые
Ответ Создать тему
Опции темы

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