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

Класс Студент - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Простые числа. Список простых чисел http://www.cyberforum.ru/cpp-beginners/thread847097.html
Доброго времени суток. Мне нужно получить список первых 1.000.000.0 простых чисел. (10^7 первых) Нужен дамб этих чисел в текстовом файле (через пробел). Для того, чтобы сделать читерский прекалк и...
C++ Динамические структуры данных. Составить программу, которая содержит текущую информацию о книгах в библиотеке не могу решить Составить программу, которая содержит текущую информацию о книгах в библиотеке. Сведения о книгах содержат: • номер УДК; • фамилию и инициалы автора; • название; • год издания;... http://www.cyberforum.ru/cpp-beginners/thread847093.html
Функции библиотеки для работы со строками и символами C++
С помощью текстового редактора создать файл, содержащий текст, длина которого не превышает 700 символов (длина строки текста не должна превышать 70 символов). Имя файла должно иметь расширение...
C++ Функции библиотеки для работы со строками и символами
Помогите с решением С помощью текстового редактора создать файл, содержащий текст, длина которого пе превышает 1000 символов (длина строки текста не должна превышать 70 символов). Имя файла...
C++ Структуры: хранение данных о планшетных сканерах http://www.cyberforum.ru/cpp-beginners/thread847085.html
Помогите, не могу решить Для хранения данных о планшетных сканерах описать структуру вида: struct scan_info{ char model; // наименование модели int price: // цена double x_s1ze: //...
C++ Не пойму тайный смысл фразы Страуструпа Читаю Страуструпа про компоновку и нашел там такое предложение: Причина, по которой в заголовочные файлы рекомендуется включать определения простых констант, а определения агрегатов включать не... подробнее

Показать сообщение отдельно
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,929
27.04.2013, 17:41
shmat_ru, необходимо перегрузить операторы << и >>

Вот пример, как это делается:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// перегружаем оператор вывода, функция принимает в качестве параметров ссылку
// на std::ostream и константную ссылку на объект класса FinalExam
ostream & operator<< (ostream &out, const FinalExam &fe)
{
    out << fe.getMark() << " " << fe.getDay() << " " << fe.getMonth() << " "
        << fe.getYear() << endl;
    return out; // возвращаем сформированный поток
}
 
// перегружаем оператор ввода, функция принимает в качестве параметров ссылку
// на std::istream и ссылку на объект класса FinalExam
istream & operator>> (istream &ist, FinalExam &fe)
{
    int mark, day, year;
    string month;
    ist >> mark >> day >> month >> year;
    fe.setMark(mark);
    fe.setDay(day);
    fe.setMonth(month);
    fe.setYear(year);
    return ist; // возвращаем поток
}
Чуть хуже - сделать функцию дружественной к классу и даже не объявлять get-set методы. Хотя, по-хорошему, надо бы.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru