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

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

Войти
Регистрация
Восстановить пароль
 
AlexProg
1 / 1 / 0
Регистрация: 03.11.2012
Сообщений: 52
#1

Ошибка: нет операции доступа к элементу - C++

14.05.2013, 10:20. Просмотров 292. Ответов 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
#include<iostream>
#include<iomanip>
#include<fstream>
#include<locale>
using namespace std;
struct PRICE {
    char name_magazine[90];
    char name_product[90];
    int cost;
    void operator()(char* str,char* str2,int mycost)
 {
     strcpy(name_magazine,str);
     strcpy(name_product,str2);
     cost=mycost;
 }
     void ListGods(int AS,const PRICE &price,char *shopName) //с ошибками 
{
  int cnt=0;
  for(int i=0;i<AS;++i)
   if(strcmp(price[i].name_magazine,shopName)==0)// ошибки вот здесь начинаються 
   {
    cout<<price[i].name_gods<<setw(4)<<price[i].stoimost;
    cnt++;
   }
  if(cnt ==0)
     cout<<"v etom magazine tovarov net";
 }
};
PRICE operator +( const PRICE &price1, const PRICE &price2)
{
    PRICE price=price1;
    strcat(price.name_magazine,price2.name_magazine);
    strcat(price.name_product,price2.name_product);
    price.cost+=price2.cost;
    return price;
}
 
PRICE &operator-(const PRICE &price1,const PRICE &price2)
{
    PRICE price;
    price.cost=price1.cost+price2.cost;
    return price;
}
PRICE &operator--(PRICE &price)
{
    price.cost--;
    return price;
}
PRICE &operator++(PRICE &price)
{
    price.cost++;
    return price;
}
ostream& operator<<(ostream& out,PRICE &price)
{
    out<<setw(10)<<setfill('.')<<setiosflags(ios::left)<<price.name_magazine<<price.name_product<<resetiosflags(ios::left)<<setw(10)<<setfill('.')<<price.cost;
    return out;
}
istream& operator>>(istream& in,PRICE &price)
{
    cout<<"\n ВВедите название магазина\n";
    in>>price.name_magazine;
    cout<<"Введите название товара\n";
    in>>price.name_product;
    cout<<"ВВедите стоимость товара";
    cin>>price.cost;
    return in;
}
int main()
{
    setlocale(LC_ALL,"russian");
    PRICE price;
    PRICE price2;
    price2("i","t",170);
    price("t","r",190);     
    price--;
    for(int i=0;i<4;++i)
        price++;
    cout<<price;
    cin>>price2;
    for(int i=0;i<10;++i)
        price2--;
    cout<<price2;
    price2+price;
    cout<<price2;
    cin.get();
    cin.get();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2013, 10:20     Ошибка: нет операции доступа к элементу
Посмотрите здесь:

Ошибка компиляции: нет перегруженной бинарной операции +. - C++
Подскажите в чем ошибка. Компилятор говорит что нет перегруженной бинарной операции + для такого типа (41 строка) #include &lt;iostream&gt; ...

Получение доступа к элементу массива не по индексу - C++
Доброго времени суток дамы и господа. Возникла сложность с получением доступа к элементу массива. Сложность заключается в следующем: есть...

Есть ли способ доступа к элементу списка по индексу? - C++
Есть ли способ доступа к элементу списка по индексу?

Задание индекса для доступа к элементу массива в виде char * - C++
по сабжу: a = 2.3234; a = 2.345e12; Каким образом можно организовать такой доступ к элементам массива?

Нет доступа к функции - C++
Есть 2 заголовочных файла .h и главный .cpp. В Employee.h есть функция, которую нельзя вызвать - error C2247: нет доступа к...

Нет доступа к файлу - C++
Всем здравствуйте. Вот какая проблема: имеется txt файл, в нем записан 0. После выполнения программы к 0 прибавляется (должна...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
magirus
Супер-модератор
Эксперт по компьютерным сетямЭксперт Windows
26425 / 14727 / 836
Регистрация: 15.09.2009
Сообщений: 63,987
Записей в блоге: 68
14.05.2013, 10:24     Ошибка: нет операции доступа к элементу #2
what problem you have?
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
14.05.2013, 10:30     Ошибка: нет операции доступа к элементу #3
AlexProg, Вы бы хоть ошибки привели.
16 строка скорее всего должна быть такой:
C++
1
void ListGods(int AS,const PRICE *price,char *shopName)
Но потом у Вас не объявленные поля name_gods, stoimost ...
Дальше не смотрел.
AlexProg
1 / 1 / 0
Регистрация: 03.11.2012
Сообщений: 52
14.05.2013, 10:44  [ТС]     Ошибка: нет операции доступа к элементу #4
ошибка в том что нет операции доступа к эллементу , надо перегрузить операцию скобки я не пойму как мне это сделать
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
14.05.2013, 11:33     Ошибка: нет операции доступа к элементу #5
Цитата Сообщение от AlexProg Посмотреть сообщение
ошибка в том что нет операции доступа к эллементу
К какому элементу?
Цитата Сообщение от AlexProg Посмотреть сообщение
надо перегрузить операцию скобки я не пойму как мне это сделать
Круглые? Квадратные?
AlexProg
1 / 1 / 0
Регистрация: 03.11.2012
Сообщений: 52
14.05.2013, 13:04  [ТС]     Ошибка: нет операции доступа к элементу #6
квадратные для данного случая

Добавлено через 1 минуту
и ещё не работает нормально опреации сложения чисел
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2013, 14:20     Ошибка: нет операции доступа к элементу
Еще ссылки по теме:

Операции с числами(правильно или нет) - C++
Подскажите почему не выводит &quot;wrong&quot;, если я ввожу 5++5(хотя в условии я задал что делать если будет подобное выражение)? #include...

Нет доступа к инициализованному полю - C++
Собственно проблема в следующем: в программе генерируются точки с случайно заданными координатами, засовываются в массив, которым владеет...

Нет доступа к переменным из функции - C++
Функция move не знает, что такое переменные i2,j2,i,j,m,n,a. Хот я все объявлены в главной программе. #include &lt;stdio.h&gt; #include...

Нет доступа к полям LOGFONT - C++
Я объявил переменную lFont#include &lt;windows.h&gt; #include &lt;windowsx.h&gt; #include &lt;wingdi.h&gt; static LOGFONT lFont; ...


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

Или воспользуйтесь поиском по форуму:
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
14.05.2013, 14:20     Ошибка: нет операции доступа к элементу #7
Цитата Сообщение от AlexProg Посмотреть сообщение
квадратные для данного случая
Повторю вопрос:
Цитата Сообщение от Tulosba Посмотреть сообщение
К какому элементу?
Yandex
Объявления
14.05.2013, 14:20     Ошибка: нет операции доступа к элементу
Ответ Создать тему
Опции темы

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