Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
Surf_Rider
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 22
1

Ошибка [Linker error] undefined reference to `Triangulation::distPoints(tagPOINT&, tagPOINT&)'

28.08.2012, 11:23. Просмотров 601. Ответов 8
Метки нет (Все метки)

Добрый день, уважаемые форумчане
есть функция которая считает площадь треугольника
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
double Triangulation::squareTriang(POINT &t1, POINT &t2, POINT &t3)
{
double a,b,c;
double Y,S;
a=distPoints(t1,t2);
b=distPoints(t2,t3);
c=distPoints(t3,t1);
Y=acos((a*a+c*c-b*b)/(2*a*c));
S=0.5*a*c*sin(Y);
return S;      
}
функция distPoint возвращает расстояние м\у двумя точками
при обращении к ней из функции squareTriang возникает вышеназванная ошибка
пожалуйста, помогите разобраться в чем дело?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.08.2012, 11:23
Ответы с готовыми решениями:

Странная ошибка: [Linker error] undefined reference to `__dyn_tls_init_callback' [Linker error] undefined reference to ld returned 1 exit status
Здравствуйте. Вот недавно начал изучать книгу "С++ для чайников" Стефан Р. Девис 4-е издание. И...

Ошибка [Linker error] undefined reference to `__dyn_tls_init_callback'
Вот такие ошибки появляются : Ошибка undefined reference to `__dyn_tls_init_callback' ...

Ошибка [Linker error] undefined reference to `_imp___ZN2sf7TextureC1Ev' В Dev C++
Всем привет. Я новичок . связался с компилятором Dev c++ и пишу один проект ... Вот мой код ...

Ошибка undefined reference to `operator<<(std::ostream&, Account)'
Всем здравствуйте! На днях столкнулся с ошибкой, с которой еще не раз не сталкивался, и не знаю как...

Undefined reference to 'My_lab2::serialize_child(My_lab2::My_stack&,boost::interpro cess::file_lock&)')
Компилирую test: g++ test.cpp -L. -lwrk -lboost_serialization -o programwrk -std=c++0x Так же...

8
Aloir
219 / 219 / 38
Регистрация: 17.12.2010
Сообщений: 710
28.08.2012, 11:26 2
линковщик ругается, если подключал dll посмотри правильно ли ты прикрутил библиотеку содержащую данную функци.
0
Surf_Rider
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 22
28.08.2012, 11:35  [ТС] 3
я ничего не подключал, у меня все в одном модуле
0
Andsteadur
153 / 137 / 34
Регистрация: 23.05.2009
Сообщений: 275
28.08.2012, 11:59 4
Лучше выложи код с объявлением и определением класса, а то сейчас можно только по кофейной гуще гадать
0
Surf_Rider
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 22
28.08.2012, 12:04  [ТС] 5
ок, вот

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
class Triangulation
{
public:
    Triangulation(){;};
    Triangulation( SList &listPoints ){ lp = listPoints; };
 
    void triangulation(vector <Polygon_> &vn);
    static bool isInTriangle(POINT &point, POINT &t1, POINT &t2, POINT &t3 );
    void inputPoints();
    void output();
    double max(double &t1, double &t2);
    double min(double &t1, double &t2);
    double distPoints(POINT &t1, POINT &t2);
    double squareTriang(POINT &p1, POINT &p2, POINT &p3);
    bool inTriang(vector<Polygon_> &vn, POINT &p);
    static double vp( POINT &a, POINT &b, POINT &c)
    { return (a.x*b.y - a.x*c.y - b.x*a.y + b.x*c.y + c.x*a.y - c.x*b.y ); }
    static double scp( POINT &a, POINT &b, POINT &c )
    { return( (c.x - b.x)*(a.x - b.x) + (c.y - b.y)*(a.y - b.y) ); }
    void appendtoTail(T &t){ lp.appendtoTail(t); }
    void clear(){ lp.clear(); }
    int size(){ return lp.size; }
 
private:
    SList lp;
    int direction;
 
    void determineDirection();
};
0
Andsteadur
153 / 137 / 34
Регистрация: 23.05.2009
Сообщений: 275
28.08.2012, 12:06 6
У метода
C++
1
double distPoints(POINT &t1, POINT &t2);
есть определение?
0
Surf_Rider
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 22
28.08.2012, 12:14  [ТС] 7
да есть
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
double distPoints(POINT &t1, POINT &t2)
{
if ((t1.x==t2.x)&&(t1.y==t2.y)) return 0;
double x1, x2, y1, y2;
x1=t1.x;
x2=t2.x;
y1=t1.y;
y2=t2.y;
Distance =sqrt(pow(x2-x1,2)+pow(y2-y1,2)); 
return Distance;  
}
0
Andsteadur
153 / 137 / 34
Регистрация: 23.05.2009
Сообщений: 275
28.08.2012, 12:21 8
C++
1
double Triangulation::distPoints(POINT &t1, POINT &t2)
Забыл указать пространство класса. Поэтому эта функция была определена как простая функция
1
Surf_Rider
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 22
28.08.2012, 12:26  [ТС] 9

спасибо, оказывается на поверхности все было
0
28.08.2012, 12:26
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.08.2012, 12:26

[Linker error] undefined reference to 'r'
Помогите решить вышеописанную проблему, на переменную s так же ругаеться! #include &lt;stdio.h&gt;...

[Linker error] undefined reference to
#include&lt;string.h&gt; #include&lt;stdlib.h&gt; #include&lt;conio.h&gt; #include&lt;stdio.h&gt; #include &lt;math.h&gt;...

[Linker Error] undefined reference to
Вызываю так функцию в main'e: #include &lt;cstdlib&gt; #include &lt;iostream&gt; #include &lt;iomanip&gt;...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru