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

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

Войти
Регистрация
Восстановить пароль
 
Quite Correct
0 / 0 / 0
Регистрация: 10.12.2012
Сообщений: 3
#1

Элементарный класс для работы с файлами, компилятор выдает ошибку, что не так с private - C++

10.12.2012, 04:06. Просмотров 450. Ответов 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
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
#include <ctime>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <iostream>
#include <string>
#include <fstream>
 
using namespace std;
 
class TDate{
private:
    string ATC3, INN, ATC1;
    double PLN_UN;
    double poland_dollars, UKR_D, UKR_UN, RUS_UN, RUS_D;
public:
    TDate(){ ATC3 = ""; INN = ""; ATC1 = "null"; PLN_UN = 0; poland_dollars = 0; UKR_UN = 0; UKR_D = 0; RUS_UN = 0; RUS_D = 0;};
    TDate(string X,string Y, char x1, double x2, double x3, double x4, double x5, double x6, double x7)
    { 
        ATC3 = X; INN = Y; ATC1 = x1; PLN_UN = x2; poland_dollars = x3; UKR_UN = x4; UKR_D = x5; RUS_UN = x6; RUS_D = x7;
    };
    ~TDate(){};
 
    TDate& SetATC3(string X){ ATC3 = X; return *this; };
    TDate& SetINN(string X){ INN = X; return *this; };
    TDate& SetATC1(string X){ ATC1 = X; return *this; };
    TDate& SetPLN_UN(double X){ PLN_UN = X; return *this; };
    TDate& Setpoland_dollars(double X){ poland_dollars = X; return *this; };
    TDate& SetUKR_D(double X){ UKR_D = X; return *this; };
    TDate& SetUKR_UN(double X){ UKR_UN = X; return *this; };
    TDate& SetRUS_UN(double X){ RUS_UN = X; return *this; };
    TDate& SetRUS_D(double X){ RUS_D = X; return *this; };
 
    string GetATC3(){ return ATC3; };
    string GetINN(){ return INN; };
    string GetATC1(){ return ATC1; };
    double GetPLN_UN(){ return PLN_UN; };
    double Getpoland_dollars(){ return poland_dollars; };
    double GetUKR_D(){ return UKR_D; };
    double GetUKR_UN(){ return UKR_UN; };
    double GetRUS_UN(){ return RUS_UN; };
    double GetRUS_D(){ return RUS_D; };
 };
 
int main()
{
    int N = 4, M = 9;
    TDate* Mass = new TDate[N];
 
    ifstream ifile("testfile.txt");
 
    string **a = new string*[N];
    for(int i = 0; i < N; i++)
        a[i] = new string[3];
 
    double** d = new double*[N];
    for(int i = 0; i < N; i++)
        d[i] = new double[6];
 
    for(int i = 0; i < N; i++)
    {
        for(int j = 0; j < M; j++)
        {
            if (j < 3)
            {
                string s;
                while (strcmp(s.c_str(), ";") != 0)
                {
                    if (strcmp(a[i][j].c_str(), "") == 0)
                        a[i][j] = s;
                    else
                        a[i][j] = a[i][j] + " " + s;
                    ifile >> s;
                }
            }
            else
            {
                ifile >> d[i][j - 3];
            }
        }
        Mass[i].SetATC1(a[i][0]).SetATC3(a[i][1]).SetINN(a[i][2]).SetPLN_UN(d[i][0]).Setpoland_dollars(d[i][1]).SetRUS_UN(d[i][2]).SetRUS_D(d[i][3]).SetUKR_UN(d[i][4]).SetUKR_D(d[i][5]);
    }
 
    ifile.close();
    ofstream mfile("Groupfile.txt");
 for(int i = 0; i < N; i++)
{ 
    if (Mass[i].poland_dollars>500000)&&(Mass[i].UKR_D=0)&&(Mass[i].RUS_D=0)
 {
in<<Mass[i].GetATC1()<<"  "<<Mass[i].GetATC3()<<"  "Mass[i].GetINN()<<"  "<<Mass[i].GetPLN_UN()<<"  "<<Mass[i].Getpoland_dollars()<<"  "<<Mass[i].GetUKR_UN()<<"  "<<Mass[i].GetUKR_D()<<"  "<<Mass[i].GetRUS_UN()<<" "<<Mass[i].GetRUS_D()<<endl;)
}
}
cout<<"Job is done";
getch();
    return 0;
}
Суть проблемы: После компиляции выдает ошибку следующего толка : "double TDate:: poland_dollars' is private.
В чем вообще загвоздка? Ведь в поля класса я могу "пихать" по факту любые переменные на свой вкус. Что с этой-то не так?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2012, 04:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Элементарный класс для работы с файлами, компилятор выдает ошибку, что не так с private (C++):

Выдает ошибку,тут что не так? Простейший класс - C++
#include&lt;conio.h&gt; #include&lt;io.h&gt; #include&lt;string.h&gt; #include&lt;iostream.h&gt; #include&lt;math.h&gt; ...

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

Что не так в коде? Рассчитать значение у для значений х. Code::Blocks выдает ошибку. - C++
рассчитать значение у для значений х, равных 4, 5, ..., 28,. на формулу не смотрите, фишка в том что код блокс выдает ошибку но в коде я...

что не так в программе, выдает ошибку... - C++
помогите разобраться, пожалуйста, что не так?

Класс для работы с файлами - C++
День добрый. Столкнулся со следующей проблемой. Задание: создать класс, инкапсулирующий работу с файлами через стандартную библиотеку...

С++ задача, надо зациклить, скажите что не так, ошибку выдает в switch, про точку с запятой знаю их вроде не н - C++
{ do { char c; system(&quot;echo Есть три задачи&quot;); system(&quot;echo 1-Следование&quot;); system(&quot;echo 2-Ветвление&quot;); system(&quot;echo...

1
Quite Correct
0 / 0 / 0
Регистрация: 10.12.2012
Сообщений: 3
11.12.2012, 18:30  [ТС] #2
Разобрался, забыл вызывать функции-селекторы для доступа к полям класса.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2012, 18:30
Привет! Вот еще темы с ответами:

компилятор выдает ошибку - C++
после запуска программы компилятор выдает окно с сообщением: &quot;необработанное исключение в &quot;0x77e015de&quot; в &quot;4.exe&quot;: 0xC0000005: Access...

Компилятор выдает ошибку - C++
Работаю в Code::Blocs. Компилятор выдает ошибку: &quot;LAB 2 - Debug&quot; uses an invalid compiler. Probably the toolchain path within the...

Мой класс для работы с файлами - C++
Здравствуйте! Я попробовал сделать свой класс для работы с файлами и показать его здесь с целью узнать, что я в нем сделал не так :) ...

LoadKeyboardLayout - компилятор выдает ошибку - C++
На строку (и на ей подобную)LoadKeyboardLayout(&quot;00000419&quot;, KLF_ACTIVATE); Компилятор (MinGW, QT Creator) выдает следующее: cannot convert...


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

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

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