Не могу понять в чем ошибка.
Это файл с классом МНОГОУГОЛЬНИК
| Код |
//polygonclass.h
class polygon{ unsigned int tops; int *xt; int *yt; int color; public: void ixy(); void oxy(); void editsize(); void lenline(); void move(); void editcolor(); void ocolor(); void draw(); polygon(){ tops = 4; xt = new int[tops]; yt = new int[tops]; for(int i=0; i<tops; ++i){ xt[i] = 0; yt[i] = 0; } color = 5; } ~polygon(){ delete []xt; delete []yt; } }; |
Методы и прочии реализации.
| Код |
//functions.h
#include "polygonclass.h" #include <graphics.h> #include <iostream.h> #include <string.h> #include <conio.h> void prus(unsigned char *line){ int len = strlen(line); unsigned int i; char c = ' '; for(int k = 0; k < len; ++k){ i = *(line+k); if((i>=192)&&(i<=239)){ i-=64; } if((i>=240)&&(i<=255)){ i-=16; } c=i; cout << c; } } void outmenu(){ clrscr(); prus("Программа, демонстрирующая методы класса МНОГОУГОЛЬНИК"); cout << '\n'; cout << '\n'; prus(" * М Е Н Ю *"); cout << '\n'; cout << '\n'; prus(" 1>Ввести координаты."); cout << '\n'; prus(" 2>Вывести координаты."); cout << '\n'; prus(" 3>Изменить размер."); cout << '\n'; prus(" 4>Вычислить длины сторон."); cout << '\n'; prus(" 5>Переместить многоугольник."); cout << '\n'; prus(" 6>Изменить цвет многоугольника."); cout << '\n'; prus(" 7>Получить цвет многоугольника."); cout << '\n'; prus(" 8>Нарисовать многоугольник."); cout << '\n'; prus(" 9>Выход из программы."); cout << '\n'; cout << '\n'; prus("Введите номер действия "); } void polygon::ixy(){ clrscr(); prus("Введите координаты вершин."); for(int i=0; i<tops; ++i){ cout << '\n'; cout << "X(" << i << ") "; cin >> xt[i]; cout << "Y(" << i << ") "; cin >> yt[i]; } } void polygon::oxy(){ clrscr(); prus("Вывод координат аершин многоугольника."); for(int i=0; i<tops; ++i){ cout << '\n'; cout << "X(" << i << ")=" << xt[i]; cout << ", Y(" << i << ")=" << yt[i]; } } void polygon::editsize(){ ; } void polygon::lenline(){ ; } void polygon::move(){ clrscr(); prus("Введите значение, на которое будет сдвигаться многоугольник."); cout << "\n\n"; prus("По X ");
cout << '\n'; prus("По Y "); } void polygon::editcolor(){ clrscr();
} void polygon::ocolor(){ ; } void polygon::draw(){ int dg=DETECT, dm; initgraph(&dg, &dm, "C:\\bc5\\bgi"); for(int x=0,y; x<tops;++x){ y=x; if(tops-x==1){y=-1;} line(xt[x],yt[x],xt[y+1],yt[y+1]); } getch(); closegraph(); } |
Главный файл.
| Код |
//main.cpp
#include "functions.h" void main(){ polygon P(); int nmenu; do{ outmenu(); cin >> nmenu; switch(nmenu){ case 1:{ P.ixy(); /*ОШИБКА*/ break;} case 2:{ //P.oxy(); break;} case 3:{ //P.editsize(); break;} case 4:{ //P.lenline(); break;} case 5:{ //P.move(); break;} case 6:{ //P.editcolor(); break;} case 7:{ //P.ocolor(); break;} case 8:{ //P.draw(); break;} case 9:{ break;} } }while(nmenu!=9); } |
Выводит ошибку main.cpp(10,15)Structure required on left side of . or .*
Даже пробовал пустой метод вызывать все равно!
Если кто знает в чем ошибка, подскажите как исправить.
|