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

Как перегрузить оператор ввода из файла? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить значение выражения http://www.cyberforum.ru/cpp-beginners/thread808531.html
помогите решить!Поясняющие изображения загружайте на форум в виде вложений. А лучше освойте встроенный редактор формул. Для второй и третьей задачи создайте отдельные темы.
C++ Массивы A[15], D[15] Использование функций, возвращающих одно значение. Даны целочисленные массивы A, D. Для каждого массива определить количество элементов, предшествующих первому максимальному элементу. Помогите!!!!!!! Уже 3 часа инет юзаю и не могу нечего стоющего для себя найти! Вот, что смог только написать!!! #include <iostream.h> #include <conio.h> http://www.cyberforum.ru/cpp-beginners/thread808527.html
Создать список и заполнить его 10 числами из ряда Фибоначчи C++
Создать список и заполнить его 10 числами из ряда Фибоначчи (1,1,2,3,5,...)и вывести на экран. Пользователь вводит порядковый номер k и значение v. Вставить новый элемент со значением v перед k-м элементом списка. Вывести на экран.(не забудьте проверку на first)
Нужно создать список и заполнить его 10 случайными целыми числами и вывести на экран C++
Помогите пж. Нужно создать список и заполнить его 10 случайными целыми числами и вывести на экран. А все четные числа из списка удалить. Вывести на экран еще раз. (не забудьте проверку на first)
C++ BGI http://www.cyberforum.ru/cpp-beginners/thread808517.html
как сделать BGI проект через Release (в Debug работает но для других компьютеров не подходит) выводит следующие ошибки: 1>Pre.obj : error LNK2001: unresolved external symbol "extern "C" void __cdecl lineto(int,int)" (?lineto@@$$J0YAXHH@Z) 1>Pre.obj : error LNK2001: unresolved external symbol "extern "C" void __cdecl line(int,int,int,int)" (?line@@$$J0YAXHHHH@Z) 1>Pre.obj : error LNK2001:...
C++ как сделать чтобы программа не переполняла буфер как сделать чтобы эта программа не переполняла буфер #include "stdafx.h" #include <iostream> using namespace std; void sort_pryamoi_vybor(int n) {int mas; int srav=0, perest=0; for (int i=0; i<n-1; i++) { int j_max=i; for (int j=i+1; j<n; j++) { srav++; подробнее

Показать сообщение отдельно
Why so seriouS
 Аватар для Why so seriouS
44 / 44 / 1
Регистрация: 12.03.2013
Сообщений: 167
14.03.2013, 18:26  [ТС]     Как перегрузить оператор ввода из файла?
Вот содержимое файла:
1 1 1 2 2 2 3 3 3
Вот что мне выводит:
Как перегрузить оператор ввода из файла?
Вот код с которым работаю:
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#include <iostream>
#include <vector>
#include <fstream>
#include <algorithm>
#include "oc.h"
 
using namespace std;
 
int menu();
 
 
int main()
{
    vector<OC> Obj;
    OC tmp;
    ifstream input;
    ofstream output;
    while(1){
    int code = menu();
    if(code == 1){
        cout<<"Enter spisok"<<endl;
    
        int n=0;
        cin>>n;
        while(n)
        {
            tmp.Set();
            Obj.push_back(tmp);
            --n;
        }
    }
 
    if(code == 2){
        char name_file[10];
        cout<<"Enter 1.txt";
        cin>>name_file;
        input.open(name_file,ios::in);
        if(!input){
            cout<<"Error!";
            system("pause>0");
            return 1;
        }
        while(!input.eof())
        {
            input >> tmp;
            Obj.push_back(tmp);
        }
        input.close();
    }
 
    if(code == 3)
        for(int i=0;i<Obj.size();i++)
            Obj[i].Show();
 
    if(code == 4)
        sort(Obj.begin(),Obj.end(),comp_tup);
 
    if(code == 5){
        char name_file[10];
        cin>>name_file;
        output.open(name_file,ios::out);
        if(!output){
            cout<<"Error!";
            system("pause>0");
            return 1;
        }
        for(int i=0;i<Obj.size();i++)
            output << Obj[i];
        output.close();
    }
    }
    
    system("pause>0");
    return 0;
}
 
int menu()
{
    cout<<"1 - Enter dani."<<endl
        <<"2 - Iz fajly."<<endl
        <<"3 - Show."<<endl
        <<"4 - Sort tup"<<endl
        <<"5 - Show in file"<<endl;
    int key;
    cin>>key;
    return key;
}

OC.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
#include "oc.h"
#include <iostream>
#include <vector>
 
using namespace std;
 
void OC::Show()
{
    cout<<"Tup masage: "<<tup_masage<<endl
        <<"Servis: "<<servis<<endl
        <<"Opus:"<<opus<<endl;
}
 
void OC::Set()
{
    cout<<"Enter masage: "; cin>>tup_masage;
    cout<<"Enter servis: "; cin>>servis;
    cout<<"Opus: "; cin>>opus;
}
 
ifstream &operator>>(ifstream &input,OC & Obj)
{
    input >> Obj.tup_masage ;
    input >> Obj.servis;
    input >> Obj.opus;
 
    return input;
}
 
ofstream &operator<<(ofstream &output,OC & Obj)
{
    output << Obj.tup_masage << " ";
    output << Obj.servis << " ";
    output << Obj.opus << endl;
 
    return output;
}
 
int comp_tup(OC Obj_left,OC Obj_righ)
{
    return Obj_left.tup_masage <  Obj_righ.tup_masage;
}

OC.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
#ifndef OC_H
#define OC_H
 
#include <iostream>
#include <fstream>
 
using namespace std;
 
class OC
{
public:
    friend int comp_tup(OC Obj_left,OC Obj_righ);
    friend ifstream &operator>>(ifstream &, OC &);
    friend ofstream &operator<<(ofstream &, OC &);
public:
    void Set();
    void Show();
    int getMasage(){return tup_masage;}
private:
    int tup_masage;
    char servis;
    char opus;
};
 
#endif
 
Текущее время: 02:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru