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

Проблемы с перегрузкой операторов файлового вводы/вывода - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ написать программу для вычисления обратной матрицы на яхыке си в ассемблере http://www.cyberforum.ru/cpp-beginners/thread828090.html
Написать два варианта программы вычисления обратной матрицы:без использования специальных расширений (обычный вариант) и с использованием встроенных векторных функций расширения SSE. Каждый вариант программы:проверить на правильность на небольшом тесте: (должно выполняться A-1A=I). Использовать тип данных float.Размер N предполагать кратным четырем. заранее спасибо
C++ У меня есть код. Ошибка conflicting type modifiers ! Помогите разобраться!!! extern void TRLS(String& sStr) { if (pLangSupp != NULL) sStr = pLangSupp->Translate(sStr); } extern template <class T> void TRLCaption(T* pControl) { pControl->Caption = TRL(pControl->Caption); http://www.cyberforum.ru/cpp-beginners/thread828084.html
Что такое векторы, и для чего нужны? C++
читаю читаю но ответа в книге зачем нужны вектора так и не могу найти!!! пожалуйста напишите пример!! что бы я понял! спасибо!
C++ Создание классов и объектов
#include <iostream.h> #include <conio.h> #include <stdlib.h> #include <string.h> class gai { private: char marka; int nomer; char color; int god;
C++ C-style Linked List http://www.cyberforum.ru/cpp-beginners/thread828060.html
Итак, изучал я, значит, C-style Linked List (не знаю, как будет по-русски) и столкнулся с такой проблемой: надо его заполнить. Вроде все просто, написал следующий код: #ifndef ST_H #define ST_H //st.h template <typename T> class st{ public: st(T n);
C++ Задана строка, начальная и конечная позиции подстроки привет всем! Задана строка, начальная и конечная позиции подстроки. Выделить подстроку. прога должна работать в ассемблере подробнее

Показать сообщение отдельно
Tulosba
:)
Эксперт С++
4382 / 3225 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
04.04.2013, 17:49     Проблемы с перегрузкой операторов файлового вводы/вывода
Уберите лишние операторы и передавайте объект по ссылке.
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <fstream>
#include <string>
 
using namespace std;
 
 
class Array{
    int *Arr, Size;
public:
    Array(int Size);
    ~Array();
 
    Array &operator = (Array &right);
    //Array operator >> (Array &obj1);
    // Array operator << (Array obj1);
 
    friend ostream& operator << (ostream &stream, const Array &obj2);
    friend istream& operator >> (istream &stream, Array &obj2);
};
 
Array::Array(int Size){
    this->Size=Size;
    Arr=new int [Size];
    for(int i=0; i < Size; i++)
        Arr[i]=0;
}
 
Array::~Array(){
 
    delete []Arr;
 
}
 
 Array &Array::operator = (Array &right){
 
    Arr=new int [Size=right.Size];
    for(int i=0; i < Size; i++)
        Arr[i]=right.Arr[i];
 
    return *this;
}
 
/*
Array Array::operator>>( Array &obj1){
 
    for(int i=0; i < obj1.Size; i++)
        cin>>obj1.Arr[i];
 
    return *this;
} 
 
Array Array::operator<<( const Array& obj1){
 
    for(int i=0; i < obj1.Size; i++)
        cout<<obj1.Arr[i];
 
    return *this;
}
*/
 
ostream &operator << (ostream &stream, const Array& obj2){
 
    for(int i=0; i < obj2.Size; i++)
    stream<<obj2.Arr[i];
 
    return stream;
}
 
istream &operator >> (istream &stream, Array& obj2){
 
    for(int i=0; i < obj2.Size; i++)
    stream>>obj2.Arr[i];
 
    return stream;
}
 
int main (){
    setlocale (LC_ALL,"Russian");
 
    int x;
 
    cout<<"Введите размер массива: ";
    cin>>x;
 
    Array obj1(x), obj2(x);
 
    cout<<"Введите массив: "<<endl;
    cin>>obj1;
 
    obj2=obj1;
 
    cout<<"Массив: "<<endl; 
    cout<<obj2;
    cout<<endl;
 
 /*
    ofstream fout;
    fout.open("Test.txt");
 
    if(!fout.is_open()){
 
        cout<<"Фаил открыть невозможно!"<<endl;
 
        return 1;
    }
 
    fout<<obj2;
 
    fout.close(); 
 
    ifstream fin;
    fin.open("Test.txt");
 
    if(!fin.is_open()){
 
        cout<<"Фаил открыть невозможно!"<<endl;
 
        return 1;
    }
 
    fin>>obj2;
    cout<<"Содержимое файла:"<<endl;
    cout<<obj2<<endl;
 
    fin.close(); */
 
    system("pause");
    return 0;
}
 
Текущее время: 18:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru