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

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

Войти
Регистрация
Восстановить пароль
 
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
#1

Что со строкой вывода? - C++

14.10.2013, 23:00. Просмотров 338. Ответов 13
Метки нет (Все метки)

C++
1
cout << "Function One. Roturning,,,"<<theCat<<"theCat\n";
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2013, 23:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что со строкой вывода? (C++):

что-то не так со строкой - C++
Не могу понять в чем проблема... помогите кто чем сможет #include&lt;iostream&gt; #include&lt;windows.h&gt; #include&lt;fstream&gt; using...

Что означает L и _T перед строкой? - C++
Здравствуйте,подскажите пожалусто что означает L и _T перед строками,и вообще какие другие приставки бывают,если их так можно...

Операторы ввода-вывода(Что не так?) - C++
#include &lt;iostream&gt; using namespace std; void main(){ int hh= 5; cin&gt;&gt;5; cout&lt;&lt;&quot;Hello word&quot;; int h=10; cout&lt;&lt;h; ...

А что возвращается в потоках вывода в этих кодах? - C++
Здравствуйте. Вот есть вспомогательные функции к классу Sales_data. Поясните, что возвращается, какие данные return os и return is. ...

Что из себя представляет допустим поток ввода/вывода - C++
Поясните пожалуйста что из себя представляет допустим поток ввода/вывода в С++ ? Это участок памяти который представляет собой что-то вроде...

Перегрузка оператора вывода в С++ (для вывода данных вектора) - C++
Как правильно перегрузить оператор вывода для вектора чтобы он выводил все данные из вектора ? Для этого класса есил можно помогите. ...

13
coloc
погромист
411 / 247 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
14.10.2013, 23:03 #2
Мои екстрасенсорные способности говорят мне, что theCat - функция. Да? Тогда ты выводишь ее адрес
1
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
14.10.2013, 23:06  [ТС] #3
C++
1
2
3
4
5
6
// Функция FunctionOne, передача как значения
SimpleCat Function0ne(SimpleCat theCat)
 {
cout << "Function One. Roturning,,,"<<theCat<<"theCat\n";
return theCat;
 }
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
14.10.2013, 23:07 #4
Use parentheses, Luke!
0
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
14.10.2013, 23:08  [ТС] #5
\проги\estce_sprobuem\estce_sprobuem\sprobuem.cpp(57): error C2679: бинарный "<<": не найден оператор, принимающий правый операнд типа "SimpleCat" (или приемлемое преобразование отсутствует)

Добавлено через 39 секунд
Чего- парэнтэсис?
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
14.10.2013, 23:09 #6
Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
Что со строкой вывода?
И, кстати, что с ней? Экстрасенс, видимо, промахнулся.

Добавлено через 50 секунд
Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
error C2679: бинарный "<<": не найден оператор
Для класса SimpleCat не определен оператор <<
1
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
14.10.2013, 23:11  [ТС] #7
Да, я вначале плохо написал.

Добавлено через 53 секунды
Как он не определен? Что это значит? как его определить?
0
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
14.10.2013, 23:13 #8
Dimka-novitsek, я что то не понял. Вы хотите вывести собственный тип данных SimpleCat?
Выводить (если я правильно помню) можно только символы, строки, но не классы
1
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
14.10.2013, 23:15 #9
Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
как его определить?
C++
1
2
3
4
5
ostream& operator<<( ostream& o, const SimpleCat& c )
{
   o << c.someField; // Выводим поля объекта SimpleCat 
   return o;
}
И наверное его нужно сделать другом класса.
1
coloc
погромист
411 / 247 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
14.10.2013, 23:18 #10
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
class cat
{
    friend std::ostream& operator<<(std::ostream &out, const cat &b) {
        out << b.meow;
        return out;
    }
    
    public:
    int meow;
};
 
int main() {
    cat dog;
    dog.meow = 101;
    std::cout << dog << " " << dog;
    return 0;
}
1
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
15.10.2013, 00:44  [ТС] #11
Вся программа

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
// Листинг 9.10.
 // Передача указателей на объекты
 
#include <string> 
#include <iostream> // для объекта cout
using namespace std;
 
#include<iomanip>
//Этот файл содержит большую часть манипуляторов C++. Если вы не знаете, что такое манипулятор, не беспокойтесь. Просто подключите это файл вместе с iostream, хуже не станет.
#include<fstream> 
//Подключается при работе с файлами.
 
 
 class SimpleCat
 {
public:
SimpleCat (); // конструктор
SimpleCat(SimpleCat&); // конструктор-копировщик
 ~SimpleCat(); // деструктор
 };
 
 SimpleCat::SimpleCat()
 {
cout << "Simple Cat Constructor...\n";
 }
 SimpleCat::SimpleCat(SimpleCat&)
 {
cout << "Simple Cat Copy Constructor...\n";
 }
 
 SimpleCat::~SimpleCat()
 {
cout << "Simple Cat Destructor...\n";
 }
 
 SimpleCat Function0ne (SimpleCat theCat);
 SimpleCat* FunctionTwo (SimpleCat *theCat);
 
 int main()
 {
cout << "main()SimpleCat Frisky;\n";
SimpleCat Frisky;     // Вызываем конструктор раз.
 
cout << "main()FunctionOne(Frisky);\n";
Function0ne(Frisky);// Функция FunctionOne, передача как значения. Конструктор копирования вызывается дважды!!!
//И деструктор дважды!!! И функция не распечатывает сообщения коут!!!!!
cout << "main()FunctionTwo(&Frisky);\n";
FunctionTwo(&Frisky); // Функция FunctionTwo, передача как ссылки. Не вызываются конструктор-деструктор!!!
//Печатается коут из функции!!!
system("pause  ");
return 0;
 }
 
// Функция FunctionOne, передача как значения
SimpleCat Function0ne(SimpleCat theCat)
 {
cout << "Function One. Roturning,,,"<<theCat<<"theCat\n";
return theCat;
 }
 
 // Функция FunctionTwo, передача как ссылки
 SimpleCat* FunctionTwo (SimpleCat *theCat)
 {
cout << "Function Two. Returning..."<<theCat;"\n";
return theCat;
 }
Добавлено через 16 минут
Наверное, к черту вывод.

Добавлено через 22 минуты
Что тогда выдают эти функции в ретурне? Что в них передается? Я все же понимаю, как передать или выдать переменную, но обьект для меня остается чем то не до конца понимаемым. Обьект Frisky- его можно как бы соотнести с какой-либо переменной, каким-то числовым или иным значением?
0
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 01:34 #12
Dimka-novitsek, я не эксперт, но объект это вроде как совокупность значений и функций. То есть он выводит конкретно значение объекта. Как пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct cube {
int w;
int h;
int d;
};
 
cube functionA (cube x)
{
return x;
}
 
cube z; // делаем объект типа cube
z.w = 4; // даем ему значения
z.h = 3;
cube t = functionA (z); // теперь t.w = 4, а t.h = 3
Если я ошибаюсь, поправьте пожалуйста
0
coloc
погромист
411 / 247 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
15.10.2013, 19:05 #13
Dimka-novitsek, Во-первых, программа не скомпилируется, потому что нету перегруженного оператора левого битового сдвига. Ты вообще читал о перегрузке? Во-вторых, оформляй нормально код, здесь люди читать это будут, если хотят тебе чем-то помочь.
Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
Обьект Frisky- его можно как бы соотнести с какой-либо переменной
Есть класс int. Есть код int a; Переменная a является екземляром класса int.
Такая же аналогия с котом
0
Tulosba
15.10.2013, 22:49     Что со строкой вывода?
  #14

Не по теме:

Цитата Сообщение от coloc Посмотреть сообщение
нету перегруженного оператора левого битового сдвига
это где Вас такому названию научили?

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2013, 22:49
Привет! Вот еще темы с ответами:

Написать программу, которая должна включать функции для: - вывода шапки таблицы; - вывода данных одной строки - C++
Написать программу, которая должна включать функции для: - вывода шапки таблицы; - вывода данных одной строки таблицы; - ввода и...

Что такое потоки ввода, потоки вывода? - C++
Здарова всем! Не так давно уже прогаю на С++ и все НИКАК не могу понять, что такое потоки ввода, потоки вывода..! вот допустим...

Для вывода матрицы на экран использовать рекурсивную функцию вывода одной строки матрицы - C++
Рекурсивная функция в С++. срочно! ДЛЯ вывода матрицы на экран построчно использовать РЕКУРСИВНУЮ функцию вывода на экран одномерного...

Что значит "%d %d\n" в функции вывода в файл fprintf(f, "%d %d\n", i, j); - C++
Что значит &quot;%d %d\n&quot; в функции вывода в файл fprintf(f, &quot;%d %d\n&quot;, i, j); Запутался, объясните, пожалуйста!


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

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

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