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

ошибка "выражение должно представлять класс, структуру или объединение" - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ В программе объявлена переменная float x=2 http://www.cyberforum.ru/cpp-beginners/thread763560.html
Какое значение получит переменная х в результате вычисления х*=(--x+1) подскажите как тут получают ответ... знаю что ++ прибавление а вот -- не совсем догоняю
C++ Метод касательных, для решения уравнения на inline assembler Добрый день. Пишу курсовую, суть оптимизировать c++ код, ассемблерными вставками, тоесть double f2(double x) { return 0; } до вида double f2(double x) { __asm{ bla bla bla } } http://www.cyberforum.ru/cpp-beginners/thread763557.html
Написать программу которая проверяет образуют ли элементы введенного с клавиатуры массива неубывающую последовательность C++
Ребят, срочно нужна ваша помощь. Написать программу которая проверяет образуют ли элементы введенного с клавиатуры массива неубывающую последовательность
Решение неравенства C++
Постановка задачи 1. Составить программу решения неравенства или системы неравенств с постоянными a=5 b=-3 c=-14.5 a1=2 a2=-3 b1=1.5 b2=-1, считываемыми из файла, в интервале x в соответствии с вариантомa ax^2+bx+c>0 При решении неравенства или системы двух неравенств сначала необходимо решить одно или два уравнения, полученные из них, методом последовательного перебора значений x с шагом...
C++ Программирование разветвляющихся алгоритмов. Вывести на экран количество дней оставшихся до конца месяца http://www.cyberforum.ru/cpp-beginners/thread763530.html
Составить программу. Как из этой программы : Дан порядковый номер дня месяца, вывести на экран количество дней оставшихся до конца месяца. #include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char *argv) {
C++ Строки. Определение кол-ва символов Вводятся две строки символов. Нужно определить, какие символы встречаются в обеих строках, а какие только в одной и вывести их. Добавлено через 17 часов 39 минут up N_N подробнее

Показать сообщение отдельно
yulla
0 / 0 / 0
Регистрация: 11.12.2012
Сообщений: 59
16.01.2013, 18:09     ошибка "выражение должно представлять класс, структуру или объединение"
clas_s

C++ (Qt)
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
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
 
class Complex // класс компелексных чисел
{
public:
   double re, im; // целая и мнимая части
   
// создаем конструкторы   
public:
   
   Complex() {};
   
   Complex (double r) // конструктор по умолчанию
   {
      re = r; 
      im = 0;
   }
   
   Complex (double r, double i) // конструктор по умолчанию
   {
      re = r; 
      im = i;
   } 
   
   Complex (Complex &c) // конструктор копирования
   {
      re = c.re; 
      im = c.im;
   }
   
   ~Complex() {}
   
double abs() // Модуль комплексного числа
   {
      return sqrt(re * re - im * im);
   }     
 
   Complex & operator = (Complex &c) // перегрузка оператора присваивания
   {
      re = c.re;
      im = c.im;
 
      return (*this);
   }
 
   Complex Complex::operator + (Complex &c) // перегрузка оператора сложения
   {
      Complex temp;
 
      temp.re = re + c.re;
      temp.im = im + c.re;
 
      return temp;
   }
 
   Complex Complex::operator - (Complex &c) // перегрузка оператора вычитания
   {
      Complex temp;
 
      temp.re = re - c.re;
      temp.im = im - c.re;
    
      return temp;
   }
 
   Complex Complex::operator * (Complex &c) // перегрузка оператора умножения
   {
      Complex temp;
 
      temp.re = re*c.re;
      temp.im = re*c.im;
 
      return temp;
   }
 
   Complex Complex::operator / (Complex &c) // перегрузка оператора деления
   {
      Complex temp;
 
      double r = c.re * c.re + c.im * c.im;
      temp.re = (re * c.re + im * c.im) / r;
      temp.re = (im * c.re - re * c.im) / r;
 
      return temp;
   }   
 
   friend ostream &operator<<(ostream &, Complex &); // перегрузка оператора <<
   friend istream &operator>>(istream &, Complex &); // перегрузка оператора >>
 
};
 
ostream &operator<<(ostream &out, Complex &c)
{
   out << "(" << c.re << ") + I (" << c.im << "\n";
   
   return out;
}
 
istream &operator>>(istream &in, Complex &c)
{
   in >> c.re >> c.im;
   
   return in;
}
main.cpp

C++ (Qt)
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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#include "clas_s.h"
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
 
class complexExt: public Complex
    {
    public:
        complexExt () {};   // Конструктор по умолчанию
        complexExt (double r): Complex(r) {} // Конструктор
        complexExt (double r, double i): Complex(r, i) {}    // Конструктор
        complexExt (complexExt& c): Complex((Complex&)c) {}    // Конструктор
        ~ complexExt () {}  // Деструктор
    double abs()   // Модуль комплексного числа
            {
            return sqrt(re * re - im * im);
            }
 
        complexExt operator+(complexExt &);    // Перегрузка оператора сложения
        complexExt operator-(complexExt &);    // Перегрузка оператора вычитания
        complexExt operator*(complexExt &);    // Перегрузка оператора умножения
        complexExt operator/(complexExt &);    // Перегрузка оператора деления
 
        // Перегрузка функции-оператора << для вывода класса complexExt
        friend ostream &operator<<(ostream &, complexExt &);
 
        // Перегрузка функции-оператора >> для ввода класса complexExt
        friend istream &operator>>(istream &, complexExt &);
    };
 
// Перегрузка +
complexExt complexExt::operator+( complexExt &fp1)
    {
    fp1.re = re + fp1.re;
    fp1.im = im + fp1.im;
    return fp1;
    }
 
// Перегрузка -
complexExt complexExt::operator-( complexExt &fp1)
    {
    fp1.re = re - fp1.re;
    fp1.im = im - fp1.im;
    return fp1;
    }
 
// Перегрузка *
complexExt complexExt::operator*( complexExt &fp1)
    {
    double i, j;
    i = re * fp1.re - im * fp1.im;
    j = re* fp1.im + fp1.re * im;
    fp1.re = i;
    fp1.im = j;
    return fp1;
    }
 
// Перегрузка /
complexExt complexExt::operator/( complexExt &fp1)
    {
    double k, i, j;
    k = fp1.re * fp1.re + fp1.im * fp1.im;
    i = (re * fp1.re + im * fp1.im) / k;
    j = (fp1.re * im- re * fp1.im) / k;
    fp1.re = i;
    fp1.im = j;
    return fp1;
    }
 
 
 
 
// Перегрузка оператора <<
void print(complexExt &fp)
{
    
 
 printf("mod(cos(%f) + I*sin(%f)\n", fp.re, c.im);
 
}
 
ostream &operator<< (ostream &fo, complexExt &fp)
{
    if (fp.im < 0) fo << "mod(cos("<<fp.re << ") +i*sin(" << fp.im << ")\n";
    else fo << "mod(cos("<< fp.re << "+i*sin(" << fp.im << ")\n";
 
    return fo;
    }
 
 
 
 
// Перегрузка оператора >>
istream &operator>>(istream &fi, complexExt &fp)
    {
    cout << "Vvedite deistvitelnyu  chast: ";
    fi >> fp.re;
    cout << "Vvedite mnimyu chast: ";
    fi >> fp.im;
    return fi;
    }
 
 
int main()
{
    
 
    // Комплексные числа
    complexExt c1, c2, c3, c4, c5;
 
    // Ввод комплексных чисел
    cin >> c1;
    cin >> c2;
    cin >> c3;
    cin >> c4;
    cin >> c5;
 
    // Вывод комплексных чисел
    cout << "\nc1 = " << c1;
    cout << "c2 = " << c2;
    cout << "c3 = " << c3;
    cout << "c4 = " << c4;
    cout << "c5 = " << c5 << '\n';
 
    cout << "Modul c1: " << c1.abs() << "\n\n";
 
    // Вывод результатов операций
 
    getch();
 
system("pause");
    
}
ошибка


1>c:\users\1\documents\visual studio 2010\projects\123456789\123456789\main.cpp(79): error C2065: c: необъявленный идентификатор
1>c:\users\1\documents\visual studio 2010\projects\123456789\123456789\main.cpp(79): error C2228: выражение слева от ".im" должно представлять класс, структуру или объединение
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru