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

Программа не "видит" класс. Почему? - C++

Восстановить пароль Регистрация
 
Unreal_Reality
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 8
09.04.2013, 19:15     Программа не "видит" класс. Почему? #1
Задание: 2.15. Разработать класс Rectangle для работы с плоскими прямоугольниками, стороны которого параллельны осям координат. В качестве членов-данных задать координаты двух точек прямоугольника (левую верхнюю точку и нижнюю правую). Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса, задающим координаты двух вершин прямоугольника. Дополнительно определить функцию-член этого класса, которая определяет площадь вписанного в исходный прямоугольник серединного четырехугольника (четырехугольника, получаемого в результате последовательного соединения середин сторон исходного прямоугольника).
Проблема: Переменная класса не объявляется, не могу понять почему....
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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <windows.h>
#define _USE_MATH_DEFINES
#include <math.h>
using namespace std;
 
class Rectangle
{
    double x1, x2, y1, y2;
    Rectangle (double _x1, double _y1, double _x2, double _y2); 
    Rectangle(const Rectangle & rhs); 
public:
    double GetX1(){return x1;}
    double GetY1(){return y1;}
    double GetX2(){return x2;}
    double GetY2(){return y2;}
    void SetX1(double _x1){x1 = _x1;}
    void SetY1(double _y1){y1 = _y1;}
    void SetX2(double _x2){x2 = _x2;}
    void SetY2(double _y2){y2 = _y2;}
    void Input();
    void Output();
    double Area(void);
    };
    
void Rectangle::Input()
{
    cout<<"Задайте x1:"<<endl;
    cin>>x1;
    cout<<"Задайте y1:"<<endl;
    cin>>y1;
    cout<<"Задайте x2:"<<endl;
    cin>>x2;
    cout<<"Задайте y2:"<<endl;
    cin>>y2;
}
void Rectangle::Output()
{
    cout<<"Значение x1:"<<x1<<endl;
    cout<<"Значение y1:"<<y1<<endl;
    cout<<"Значение x2:"<<x2<<endl;
    cout<<"Значение y2:"<<y2<<endl;
}
double Rectangle::Area(void)
{
    double s;
    s=(3*sqrt((3)*(pow(x1-x2,2) + pow(y1-y2,2)))/16);
    cout<<"Площадь вписанного в исходный прямоугольник серединного четырехугольника: "<<s<<endl;
}
 
 
 
int main()
{
 
    Rectangle a;
    a.Input();
    a.Output();
    cout<<"Площадь вписанного в исходный прямоугольник серединного четырехугольника:"<<a.Area();
    _getch();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2013, 19:15     Программа не "видит" класс. Почему?
Посмотрите здесь:

C++ Создать класс "точка" и производный класс "отрезок"
Подскажите почему может появляться ошибка: "неразрешенный внешний символ "_SDL_..."" C++
Программа, которая считывает текст из файла и выводит его на экран, заменив цифры от 0 до 9 на слова "ноль", "один",..."девять" C++
C++ Почему программа "падает" на функции заполнения дерева?
Программа по ООП. Класс "Журнал оценок" C++
C++ Класс "Графический объект", от которого будут наследоваться классы "круг" и "квадрат"
C++ Иерархия классов "список"-"очередь", вызов метода через класс интерфейс
C++ Описать класс "Контейнер" как объект, предназначенный для транспортировки классов "Строительных блоков"

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GetVariable
 Аватар для GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
09.04.2013, 19:16     Программа не "видит" класс. Почему? #2
у вас конструктор в private перенесите его в public
Yandex
Объявления
09.04.2013, 19:16     Программа не "видит" класс. Почему?
Ответ Создать тему
Опции темы

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