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

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

Войти
Регистрация
Восстановить пароль
 
Маринчик
0 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 138
#1

Expected init-declarator before "operator".expected `,' or `;' before "operator" - C++

19.05.2014, 23:20. Просмотров 475. Ответов 1
Метки нет (Все метки)

Пример не мой. Пытаюсь у себя запустить и чтото неполучается.
Ошибка на строке 24
Expected init-declarator before "operator".Expected `,' or `;' before "operator"
Непойм где ставить`,' или`;. Вроде все знаки на месте..

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
#include<iostream>/*zagolovochnij fajl s klassami, funktsijami i peremennimi dlja organizacii vvoda-vivoda v jazike programmirovaniya C++*/
using namespace std;/*ob'javlenie prostranstva imen  std.*/
 
class obj
{ public:
         float n; 
         obj();
         void vvod();
         void vivod();
         obj(int _n) {n=_n;}
         obj operator << (obj& s1);
         obj operator - (obj& s2);
         ~obj();
      };
  
obj::obj()
{ puts("\nrabotal konstruktor\n");}
 
void obj::vvod()
{ cout<<"Vvedite ekzempljar klassa:";
  cin>>n; cout<<"\n";}  
     
obj obj operator << (obj& P1)
{ obj rez;
 cout<<"\n idet peregryzka <<";
 rez.n=n<<P1.n;
 return rez;
}
/*obj obj operator - (obj& P1)
{ obj rez;
    cout<<"\n idet peregryzka -";
 rez.n=P1.n-n;
 return rez;
}*/
void obj::vivod()
{cout<<"D=(A<<B)=";
 cout<<n<<" "; 
}   
 
int main()
{obj A(), B(), C(), D;/*ekzempljari(objekti) klassa*/
 A.vvod();
 B.vvod();
 C.vvod();
 
 D =(A << B);
 D.vivod();
 system("pause"); 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2014, 23:20     Expected init-declarator before "operator".expected `,' or `;' before "operator"
Посмотрите здесь:

Реализация перегрузки "operator +" для двух объектов C++
expected primary-expression before "bre" ; expected `;' before "bre" ; `bre' undeclared (first use this function) C++
C++ Чем "operator *=" отличается от "operator *"?
"error: expected unqualified-id at end of input" на ровном месте C++
C++ Компилатор, ошибка "expected primary-expression before "int" "
no operator found which takes a right/left-hand operand of type "AR" C++
Вывод строки с cout: IntelliSense: no operator "<<" matches these operands C++
C++ Qt ошибки "qualified-id declaration before '(' token" и "expected '}' at end of input"
C++ Написать перегрузку operator+() для класса "Массив"
C++ Добавить целое число в очередь с помощью "operator <<"
Ошибка "binary '==': no operator found which takes a left-hand operand of type" C++
бинарный "operator <<" имеет слишком мало параметров С++ C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6482 / 4948 / 455
Регистрация: 14.02.2011
Сообщений: 16,389
19.05.2014, 23:27     Expected init-declarator before "operator".expected `,' or `;' before "operator" #2
Цитата Сообщение от Маринчик Посмотреть сообщение
Вроде все знаки на месте..
а здесь где??
Цитата Сообщение от Маринчик Посмотреть сообщение
obj(int _n) {n=_n;}
Добавлено через 1 минуту
Цитата Сообщение от Маринчик Посмотреть сообщение
obj obj operator << (obj& P1)
это как так?
два раза возвращаем значение?
двоеточие то где?

Добавлено через 42 секунды
Цитата Сообщение от Маринчик Посмотреть сообщение
float n;
Цитата Сообщение от Маринчик Посмотреть сообщение
obj(int _n) {n=_n;}
типы то не совпадают
Yandex
Объявления
19.05.2014, 23:27     Expected init-declarator before "operator".expected `,' or `;' before "operator"
Ответ Создать тему
Опции темы

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