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

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

Войти
Регистрация
Восстановить пароль
 
iluxa1810
13 / 13 / 5
Регистрация: 03.09.2011
Сообщений: 1,022
#1

Как исправить вот эти ошибки? Вроде все правильно сделал... - C++

05.11.2011, 16:19. Просмотров 838. Ответов 6
Метки нет (Все метки)

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
/*
 * test.cpp
 *
 *  Created on: 05.11.2011
 *      Author: Sensei
 */
 
#include <iostream>
using std::cout;
using std::endl;
#include <string>
using std::string;
using std::getline;
class Invoice
{
public :
    Invoice(string articul,string opisanie ,int price,int kol)
    {
setArticul(articul);
setOpisanie(opisanie);
setPrice(price);
setKol(kol);
 
    }
void setArticul(string inArticul)
{
    articul=inArticul;
 
}
string getArticul()
{
    return articul;
}
 
void setPrice(int inPrice)
{
    if (inPrice < 0)
        inPrice = 0 ;
    price = inPrice ;
}
 
int getPrice()
 
{
 
return price;
 
}
 
void setKol(int inKol)
 
{
 
if (inKol < 0)
inKol = 0;
kol = inKol;
 
}
 
int getKol()
{
    return kol;
}
 
void setOpisanie(string inOpisanie)
 
{
    if (inOpisanie.length == 0)
    inOpisanie = "Описание отсутствует";
    opisanie = inOpisanie;
}
 
string getOpiasnie()
{
    return opisanie;
}
 
int getInvoiceAmount()
{
    int buf;
    buf = kol*price;
    return buf;
}
 
private :
 
int kol;
int price;
string articul;
string opisanie;
 
};
 
int main()
{
    Invoice tovar1("Джигурда","Ололо",100500,2);
    Invoice tovar2("Онотоле","",500,3);
 
    cout <<" Артикул: " << tovar1.getArticul << endl;
    cout <<" Артикул: " << tovar2.getArticul << endl;
    cout <<" Описание: " << tovar1.getOpiasnie << endl;
    cout <<" Описание: " << tovar2.getOpiasnie << endl;
    cout << " Цена: " << tovar1.getPrice << endl;
    cout << " Цена: " << tovar2.getPrice << endl;
    cout << " Количество " << tovar1.getKol() << endl;
    cout << " Количество " << tovar2.getKol() << endl;
    cout << " Общая стоимость " << tovar1.getInvoiceAmount << endl;
    cout << " Общая стоимость " << tovar2.getInvoiceAmount << endl;
    return 0;
}
Description Resource Path Location Type
invalid use of member (did you forget the '&' ?) test.cpp /Invoice/class line 68 C/C++ Problem
no match for 'operator<<' in 'std::operator<< [with _Traits = std::char_traits<char>](((std::basic_ostream<char>&)(& std::cout)), ((const char*)" \37777777700\37777777760\37777777762\37777777750\37777777752\37777777763\37777777753: ")) << tovar1.Invoice::getArticul' test.cpp /Invoice/class line 99 C/C++ Problem
no match for 'operator<<' in 'std::operator<< [with _Traits = std::char_traits<char>](((std::basic_ostream<char>&)(& std::cout)), ((const char*)" \37777777700\37777777760\37777777762\37777777750\37777777752\37777777763\37777777753: ")) << tovar2.Invoice::getArticul' test.cpp /Invoice/class line 100 C/C++ Problem
no match for 'operator<<' in 'std::operator<< [with _Traits = std::char_traits<char>](((std::basic_ostream<char>&)(& std::cout)), ((const char*)" \37777777716\37777777741\37777777771\37777777740\37777777777 \37777777761\37777777762\37777777756\37777777750\37777777754\37777777756\37777777761\37777777762\37777777774 ")) << tovar1.Invoice::getInvoiceAmount' test.cpp /Invoice/class line 107 C/C++ Problem
no match for 'operator<<' in 'std::operator<< [with _Traits = std::char_traits<char>](((std::basic_ostream<char>&)(& std::cout)), ((const char*)" \37777777716\37777777741\37777777771\37777777740\37777777777 \37777777761\37777777762\37777777756\37777777750\37777777754\37777777756\37777777761\37777777762\37777777774 ")) << tovar2.Invoice::getInvoiceAmount' test.cpp /Invoice/class line 108 C/C++ Problem
no match for 'operator<<' in 'std::operator<< [with _Traits = std::char_traits<char>](((std::basic_ostream<char>&)(& std::cout)), ((const char*)" \37777777716\37777777757\37777777750\37777777761\37777777740\37777777755\37777777750\37777777745: ")) << tovar1.Invoice::getOpiasnie' test.cpp /Invoice/class line 101 C/C++ Problem
no match for 'operator<<' in 'std::operator<< [with _Traits = std::char_traits<char>](((std::basic_ostream<char>&)(& std::cout)), ((const char*)" \37777777716\37777777757\37777777750\37777777761\37777777740\37777777755\37777777750\37777777745: ")) << tovar2.Invoice::getOpiasnie' test.cpp /Invoice/class line 102 C/C++ Problem
no match for 'operator<<' in 'std::operator<< [with _Traits = std::char_traits<char>](((std::basic_ostream<char>&)(& std::cout)), ((const char*)" \37777777726\37777777745\37777777755\37777777740: ")) << tovar1.Invoice::getPrice' test.cpp /Invoice/class line 103 C/C++ Problem
no match for 'operator<<' in 'std::operator<< [with _Traits = std::char_traits<char>](((std::basic_ostream<char>&)(& std::cout)), ((const char*)" \37777777726\37777777745\37777777755\37777777740: ")) << tovar2.Invoice::getPrice' test.cpp /Invoice/class line 104 C/C++ Problem
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2011, 16:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как исправить вот эти ошибки? Вроде все правильно сделал... (C++):

Как исправить эти ошибки - C++
как исправить ети ошибки Код: #include&lt;iostream.h&gt; #include&lt;conio.h&gt; #include&lt;string.h&gt; #define n 10 struct Krainy { ...

Найти ошибки в коде и исправить эти ошибки (Наследование) - C++
Вот в общем 3 файла, изучаю наследование на примере односвязного и двусвязного списков: list.h (inline) #pragma once class list...

Найти ошибки в коде и исправить эти ошибки - C++
Есть у меня вот такой код: #include &lt;iostream&gt; using namespace std; class A{ private: int* a; size_t size_; ...

Найти ошибки в коде и исправить эти ошибки - C++ - C++
Судя по вываливающейся ошибки, идет двойное освобождение памяти. У самого не получается отловить откуда. A.h #pragma once ...

Найти причины возникновения ошибок в коде и исправить эти ошибки (динамический массив как поле класса) - C++
когда запускаю, пишет что нет прав доступа для записи в память. если писать без класса, то все работает P.S. использую MVS Express 2015...

Ошибки вроде бы нет, но работает не правильно! - C++
Христос Воскресе! Вот код: #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;clocale&gt; #include &lt;cstdlib&gt; using namespace std;...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
05.11.2011, 16:29 #2
А скобки кто дописывать будет?
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
#include <iostream>
using std::cout;
using std::endl;
#include <string>
using std::string;
using std::getline;
class Invoice
{
public :
        Invoice(string articul,string opisanie ,int price,int kol)
        {
setArticul(articul);
setOpisanie(opisanie);
setPrice(price);
setKol(kol);
 
        }
void setArticul(string inArticul)
{
        articul=inArticul;
 
}
string getArticul()
{
        return articul;
}
 
void setPrice(int inPrice)
{
        if (inPrice < 0)
                inPrice = 0 ;
        price = inPrice ;
}
 
int getPrice()
 
{
 
return price;
 
}
 
void setKol(int inKol)
 
{
 
if (inKol < 0)
inKol = 0;
kol = inKol;
 
}
 
int getKol()
{
        return kol;
}
 
void setOpisanie(string inOpisanie)
 
{
        if (inOpisanie.length() == 0)
        inOpisanie = "Описание отсутствует";
        opisanie = inOpisanie;
}
 
string getOpiasnie()
{
        return opisanie;
}
 
int getInvoiceAmount()
{
        int buf;
        buf = kol*price;
        return buf;
}
 
private :
 
int kol;
int price;
string articul;
string opisanie;
 
};
 
int main()
{
        Invoice tovar1("Джигурда","Ололо",100500,2);
        Invoice tovar2("Онотоле","",500,3);
 
        cout <<" Артикул: " << tovar1.getArticul() << endl;
        cout <<" Артикул: " << tovar2.getArticul() << endl;
        cout <<" Описание: " << tovar1.getOpiasnie() << endl;
        cout <<" Описание: " << tovar2.getOpiasnie() << endl;
        cout << " Цена: " << tovar1.getPrice() << endl;
        cout << " Цена: " << tovar2.getPrice() << endl;
        cout << " Количество " << tovar1.getKol() << endl;
        cout << " Количество " << tovar2.getKol() << endl;
        cout << " Общая стоимость " << tovar1.getInvoiceAmount() << endl;
        cout << " Общая стоимость " << tovar2.getInvoiceAmount() << endl;
    return 0;
}
1
iluxa1810
13 / 13 / 5
Регистрация: 03.09.2011
Сообщений: 1,022
05.11.2011, 16:33  [ТС] #3
Благодарю.
С++ такой строгий язык)

Добавлено через 2 минуты
Добавил я скобки . Все равно ошибки остались(Только в if убралась)
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
/*
 * test.cpp
 *
 *  Created on: 05.11.2011
 *      Author: Sensei
 */
 
#include <iostream>
using std::cout;
using std::endl;
#include <string>
using std::string;
using std::getline;
class Invoice
{
public :
    Invoice(string articul,string opisanie ,int price,int kol)
    {
setArticul(articul);
setOpisanie(opisanie);
setPrice(price);
setKol(kol);
 
    }
void setArticul(string inArticul)
{
    articul=inArticul;
 
}
string getArticul()
{
    return articul;
}
 
void setPrice(int inPrice)
{
    if (inPrice < 0)
        inPrice = 0 ;
    price = inPrice ;
}
 
int getPrice()
 
{
 
return price;
 
}
 
void setKol(int inKol)
 
{
 
if (inKol < 0)
inKol = 0;
kol = inKol;
 
}
 
int getKol()
{
    return kol;
}
 
void setOpisanie(string inOpisanie)
 
{
    if (inOpisanie.length() == 0)
    inOpisanie = "Описание отсутствует";
    opisanie = inOpisanie;
}
 
string getOpiasnie()
{
    return opisanie;
}
 
int getInvoiceAmount()
{
    int buf;
    buf = kol*price;
    return buf;
}
 
private :
 
int kol;
int price;
string articul;
string opisanie;
 
};
 
int main()
{
    Invoice tovar1("Джигурда","Ололо",100500,2);
    Invoice tovar2("Онотоле","",500,3);
 
    cout <<" Артикул: " << tovar1.getArticul() << endl;
    cout <<" Артикул: " << tovar2.getArticul() << endl;
    cout <<" Описание: " << tovar1.getOpiasnie() << endl;
    cout <<" Описание: " << tovar2.getOpiasnie() << endl;
    cout << " Цена: " << tovar1.getPrice() << endl;
    cout << " Цена: " << tovar2.getPrice() << endl;
    cout << " Количество " << tovar1.getKol() << endl;
    cout << " Количество " << tovar2.getKol() << endl;
    cout << " Общая стоимость " << tovar1.getInvoiceAmount() << endl;
    cout << " Общая стоимость " << tovar2.getInvoiceAmount() << endl;
    return 0;
}
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
05.11.2011, 16:39 #4
Цитата Сообщение от iluxa1810 Посмотреть сообщение
Добавил я скобки . Все равно ошибки остались(Только в if убралась)
Какие ошибки? У меня в 10 студии нормально собирается.
0
iluxa1810
13 / 13 / 5
Регистрация: 03.09.2011
Сообщений: 1,022
05.11.2011, 16:41  [ТС] #5
Invoice tovar2("Онотоле","",500,3);
Поставил пробел между "" и ошибка пропала .Теперь вопрос:Если "" создает ошибку,то как тогда сделать проверку на пустую строку ?

Добавлено через 1 минуту
Kastaneda, Вопрос про студию:
У меня тоже есть Студия 2010,но мне не нравится то,как она отображает ошибки ,еле заметным выделением...Нельзя ли сделать,что бы рядом со строкой ставился красный кружой или квадрат,который хорошо виден ?
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
05.11.2011, 16:45 #6
Цитата Сообщение от iluxa1810 Посмотреть сообщение
Поставил пробел между "" и ошибка пропала
Это не пустая строка, это пробел.
Цитата Сообщение от iluxa1810 Посмотреть сообщение
Если "" создает ошибку,то как тогда сделать проверку на пустую строку ?
Так и делают, это не может создавать ошибку.

Добавлено через 2 минуты
Цитата Сообщение от iluxa1810 Посмотреть сообщение
мне не нравится то,как она отображает ошибки ,еле заметным выделением...
Да вроде нормально, там есть еще такая удобная фича, как подчеркивание красным, т.е. часть ошибок ты можешь заметить еще до компиляции. А после компиляции два раза кликаешь по тексту ошибки снизу и студия показывает строку и место ошибки в самом редакторе.

Цитата Сообщение от iluxa1810 Посмотреть сообщение
Нельзя ли сделать,что бы рядом со строкой ставился красный кружой или квадрат,который хорошо виден ?
Хз, покопайся в настройках, может что и найдешь.
0
iluxa1810
13 / 13 / 5
Регистрация: 03.09.2011
Сообщений: 1,022
05.11.2011, 17:00  [ТС] #7
Kastaneda, Странный какой-то этот Эклипс...
Щас снова убрал пробел между " " и ошибка пропала...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2011, 17:00
Привет! Вот еще темы с ответами:

Исправить ошибки в коде или пояснить как правильно запустить - C++
Добрый вечер,нужна помощь есть текст программы написанный в 2010 с++ ,немогу запустить в 2013,выдает ошибку что неправильная...

Найти причины возникновения ошибок и исправить эти ошибки - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;cstdlib&gt; void sum(); int main() {

Найти причины возникновения ошибок и исправить эти ошибки - C++
Доброго времени суток, Уважаемые! Есть данный код: #include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;sstream&gt; #include &lt;string&gt; ...

Найти причины возникновения ошибок в коде и исправить эти ошибки - C++
не пойму что он от меня хочет #include &lt;math.h&gt; #include &lt;stdio.h&gt; #include &lt;iostream.h&gt; #include &lt;stdlib.h&gt; #include...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
05.11.2011, 17:00
Ответ Создать тему
Опции темы

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