Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
1 / 1 / 0
Регистрация: 12.11.2009
Сообщений: 109
1

cout и объект класса

16.10.2012, 20:42. Показов 868. Ответов 5
Метки нет (Все метки)

Здравствуйте, форумчане.

Есть класс, который реализует список. Необходимо, чтобы при записи
C++
1
2
List* MyList = new List;
cout << MyList;
выводились элементы списка. Т.е. нужно объект класса привести к строчному типу?
Среда Visual Studio 2011, Проект Win32 Console Application.
Совсем не знаком с потоковым вводом\выводом, подскажите, пожалуйста, куда копать, что почитать.
C++
1
cout << 12;
понятно, что выведет 12. А вот как быть с объектом, не соображу
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.10.2012, 20:42
Ответы с готовыми решениями:

Cout объект?
привет! class exem{ public: int a=11;

При компиляции объект cout выводит ноль
Подскажите, что изменить в проге, чтоб ноль не выводился? #include &lt;conio.h&gt; #include...

Нюансы ввода/вывода в Си и C++ (функция printf() и объект std::cout)
Добрый день. Интересует следующий вопрос: каким именно образом работает команда форматирование...

Перегрузка cout<< для шаблонного класса
Перегрузка cout&lt;&lt; для шаблонного класса - это реально или нет?

5
126 / 124 / 16
Регистрация: 03.07.2011
Сообщений: 354
16.10.2012, 20:51 2
вам нужно перегрузить оператор <<.
прототип перегруженного оператора примерно так:
C++
1
friend ostream& operator<<(ostream& out, const List& t);
определяете в этой функции что вам нужно
Почитайте про перегрузку операторов в любом учебнике.
2
5480 / 4875 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.10.2012, 20:53 3
В классе List нужно перегрузить оператор << (пример в предыдущем посте). В реализации просто переписываете вывод списка (наверное, есть), заменив cout на out.
1
178 / 161 / 38
Регистрация: 08.10.2012
Сообщений: 423
16.10.2012, 20:56 4
нужно переопределить оператор << и в теле оператора расписать как и что должно выводится. Но это будет выводится только для объектов класса List
1
Комп_Оратор)
Эксперт по математике/физике
8719 / 4428 / 598
Регистрация: 04.12.2011
Сообщений: 13,270
Записей в блоге: 16
16.10.2012, 20:58 5
Цитата Сообщение от krow7 Посмотреть сообщение
Есть класс, который реализует список. Необходимо, чтобы при записи
C++
1
2
List* MyList = new List;
cout << MyList;
выводились элементы списка. Т.е. нужно объект класса привести к строчному типу?
Среда Visual Studio 2011, Проект Win32 Console Application.
C++
1
cout << 12;
понятно, что выведет 12. А вот как быть с объектом, не соображу
krow7, привести объект к строчному типу можно. Но тогда самому нужно будет определить, что это значит. Пишите метод string ToStr() или как то еще и сделайте так чтобы он возвращал то из объекта, что Вам нужно в виде строки.
Можно написать метод void Show() который обернет cout'ы выводящие необходимые поля.
И наконец можно перегрузить оператор << , тогда можно использовать объект c потоками и cout, в частности.
0
1 / 1 / 0
Регистрация: 12.11.2009
Сообщений: 109
16.10.2012, 22:36  [ТС] 6
Всем спасибо за бурную реакцию и подробные оперативные ответы. Разобрался. Вы кул ребята
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.10.2012, 22:36

Почему объект производного класса не видит префиксный оператор из базового класса?
Короче создал я базовый класс с перегруженным префиксным оператором ++. Потом чтоб его...

Как сложить объект базового класса с объектом производного(наследуемого класса)
Как умножить объект базового класса с объектом производного(наследуемого класса): ozenka - объект...

Можно ли создать объект класса с таким же именем как у самого класса?
Можно ли создать объект класса с таким же именем как у самого класса? Ну или как то обойти эту...

Ошибка компиляции (преобразование объекта класса в объект другого класса)
Друзья, добрый день! Не могу понять почему выдается ошибка компиляции... Прога преобразует...


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

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

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