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

Класс Triangle - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.96
lavengerl
0 / 0 / 0
Регистрация: 18.09.2011
Сообщений: 77
04.12.2011, 17:03     Класс Triangle #1
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
90
91
92
93
94
95
96
#include <iostream>
#include <math.h>
 
using namespace std;
 
class Triangle
{
 
public:
 
double a,b,c,al,bt,gm,pl,per;
    void Init();
    void Change();
    void Ob4();
    Triangle();
    Triangle(double _a,double _b,double _c) //конструктор
    {
        a=_a;
        b=_b;
        c=_c;
    }
    };  
 
class RightAngled:public Triangle 
{
public:
    RightAngled();
    void Plosha();
};
 
void Triangle::Init()
{
    cout<<"за замовчуванням сторони свстановлено:"<<endl;
    cout<<"сторона а="<<a<<endl;
    cout<<"сторона b="<<b<<endl;
    cout<<"сторона c="<<c<<endl;
    cout<<"бажаэте змiнити?(1-так, iнше-нi)"<<endl;
}
 
void Triangle::Change()
{
    cout<<"введiть сторони:"<<endl;
    cout<<"сторона а="; cin>>a; 
    cout<<"сторона b="; cin>>b; 
    cout<<"сторона c="; cin>>c;
    if(((a+b)<c)||((a+c)<b)||((c+b)<a))
    {
        cout<<"Помилка, неправильно введенi сторони"<<endl;
        Change();
    }
}
 
void Triangle::Ob4()
{
    al=acos((b*b+c*c-a*a)/(2*b*c))*180/3,14;
    bt=acos((a*a+c*c-b*b)/(2*a*c))*180/3,14;
    gm=acos((b*b+a*a-c*c)/(2*b*a))*180/3,14;
    per=a+b+c;
    cout<<"Обчислення кутiв:"<<endl;
    cout<<"alfa="<<al<<endl<<"beta="<<bt<<endl<<"gamma="<<gm<<endl<<"Периметр="<<per<<endl;
}
 
void RightAngled::Plosha()
{
    cout<<"введiть 2 катета прямокутного трикутника"<<endl;
    cout<<"катет а="; cin>>a; 
    cout<<"катет b="; cin>>b; 
    c=sqrt(a*a+b*b);
    cout<<"гiпотенуза c="<<c;
/*
    al=acos((b*b+c*c-a*a)/(2*b*c))*180/3,14;
    bt=acos((a*a+c*c-b*b)/(2*a*c))*180/3,14;
    gm=acos((b*b+a*a-c*c)/(2*b*a))*180/3,14;
    per=a+b+c;
    cout<<"Обчислення кутiв:"<<endl;
    cout<<"alfa="<<al<<endl<<"beta="<<bt<<endl<<"gamma="<<gm<<endl<<"Периметр="<<per<<endl;
    */
}
int main()
{
setlocale( LC_ALL, "Ukrainian");
Triangle obj(3,4,5);
obj.Init();
int x;
cin>>x;
if (x==1) obj.Change();
system("Pause");
system("cls");
obj.Ob4();
system("Pause");
system("cls");
 
RightAngled obj1;
 
return 0;
}
1 проблема, не могу создать обьект класса наследника. Незнаю в чем ошибка...


Error 1 error LNK2019: unresolved external symbol "public: __thiscall RightAngled::RightAngled(void)" (??0RightAngled@@QAE@XZ) referenced in function _main C:\Users\Admin\Documents\Visual Studio 2010\Projects\laba2 programming\laba2 programming\1.obj laba2 programming

Error 2 error LNK1120: 1 unresolved externals C:\Users\Admin\Documents\Visual Studio 2010\Projects\laba2 programming\Debug\laba2 programming.exe 1 1 laba2 programming
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2011, 17:03     Класс Triangle
Посмотрите здесь:

Класс треугольников Triangle C++
Класс Triangle C++
Реализовать класс Triangle (задание 25), опираясь на класс Angle из задания 26 для представления углов C++
C++ Класс Triangle
Класс Triangle ошибка C++
C++ Создать класс triangle
Создать класс triangle с полями-сторонами C++
Класс Triangle ошибка C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Roof
 Аватар для Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
04.12.2011, 17:35     Класс Triangle #2
Конструкторы помимо объявления нужно еще и определять. Например так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
...
Triangle( /* тут аргументы*/) {
        // тут определение конструктора
    }
 
Triangle( double _a, double _b, double _c ) :
        a( _a ), b( _b ), c( _c )
    {
    }
 
...
 
RightAngled( /* тут аргументы*/) {
        // тут определение конструктора
    }
...
Нну или вне тела класса.
После этого объект класса RightAngled я создал без проблем.
lavengerl
0 / 0 / 0
Регистрация: 18.09.2011
Сообщений: 77
04.12.2011, 17:50  [ТС]     Класс Triangle #3
Благодарю) знал что ошибка мелкая, каверзная какая-то. Теперь запомню это.
Yandex
Объявления
04.12.2011, 17:50     Класс Triangle
Ответ Создать тему
Опции темы

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