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

error LNK2019: ссылка на неразрешенный внешний символ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
koren
0 / 0 / 0
Регистрация: 17.01.2011
Сообщений: 8
17.01.2011, 05:32     error LNK2019: ссылка на неразрешенный внешний символ #1
есть исходник .cpp
---------------------------------------------------------------------
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
#include <stdafx.h>
#include <iostream>
#include "incl.h"
 
using namespace std;
 
void setgolf(sttest &test, const char *name, int hc);
 
 
 
void setgolf(sttest &test, const char *name, int hc)
{
        
 
};
int setgolf(sttest &test);
 
int setgolf(sttest &test, int hc);
void showgolf(const sttest &test);
 
 
int main()
    {
        sttest sttest1;
        cout << "Enter name\n";
        cin >> sttest1.mass1;
        cout << "Enter handicap\n";
        cin >> sttest1.b;
 
        setgolf (sttest1);
        return 0;
    }
-----------------------------------------------------------------------
и заголовок .h
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
using namespace std;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//CASSES
    class DataClass
{
    public:
    static const int ln = 45; 
    DataClass();
    ~DataClass();
    double Getvar() {return test;}
    void Setvar() {++test;}
    DataClass(DataClass&);
 
    private:
    double Priv;
    double test;
    double test1;
    double test2;
    };
 
    DataClass::DataClass()
    {
    cout << "Contructor DataClass\n";
    Priv=4;
    test = ln;
    this->test1 = 50;
    test2=45;
    }
 
    DataClass::~DataClass()
    {   
        cout << "Destructor DataClass\n";
    }
 
    DataClass::DataClass(DataClass&)
    {
        cout << "Copy contructor DataClass\n";
    }
 
    DataClass FunctionOne(DataClass Class1)
    {
        cout << "FunctionOne\n";
        cout << Class1.Getvar() << "\n";
        Class1.Setvar();
        cout << Class1.Getvar() << "\n";
        return Class1;
    }
 
    DataClass& FunctionTwo(DataClass &Class1)
    {
        cout << "FuctionTwo\n";
        Class1.Setvar();
        cout << Class1.Getvar() << "\n";
        int i,j;
        for (i=0, j=1; i<10; i++, j++);
        cout << i << j << "\n";
        return Class1;
    }
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//STRUCTURES
const int len = 50;
 
    struct sttest
    {
        char mass1[50];
        double b;
    };
---------------------------------------------------------------------
выдает вот такую ошибку:
1>sample.obj : error LNK2019: ссылка на неразрешенный внешний символ "int __cdecl setgolf(struct sttest &)" (?setgolf@@YAHAAUsttest@@@Z) в функции _main
1>C:\Documents and Settings\xa\Мои документы\Visual Studio 2008\Projects\sample\Debug\sample.exe : fatal error LNK1120: 1 неразрешенных внешних элементов
1>Журнал построения был сохранен в "file://c:\Documents and Settings\xa\Мои документы\Visual Studio 2008\Projects\sample\sample\Debug\BuildLog.htm"
1>sample - ошибок 2, предупреждений 0

Я ничего не использую кроме собственных функций.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2011, 05:32     error LNK2019: ссылка на неразрешенный внешний символ
Посмотрите здесь:

C++ error LNK2019: ссылка на неразрешенный внешний символ
error LNK2019: ссылка на неразрешенный внешний символ C++
C++ error LNK2019: ссылка на неразрешенный внешний символ
error LNK2019: ссылка на неразрешенный внешний символ C++
Error LNK2019: ссылка на неразрешенный внешний символ C++
C++ Error LNK2019: ссылка на неразрешенный внешний символ
Error LNK2019: ссылка на неразрешенный внешний символ C++
C++ Error LNK2019: ссылка на неразрешенный внешний символ

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
17.01.2011, 05:40     error LNK2019: ссылка на неразрешенный внешний символ #2
У вас в главном файле 3 перегрузки для setgolf, а описана только одна. Опишите все функции, которые объявили.
koren
0 / 0 / 0
Регистрация: 17.01.2011
Сообщений: 8
20.01.2011, 12:43  [ТС]     error LNK2019: ссылка на неразрешенный внешний символ #3
Опять таже ошибка
файл один sample2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
// class1.cpp : Defines the entry point for the console application.
 
#include <stdafx.h>
#include <iostream>
#include "incl.h"
 
using namespace nssales;
using namespace std;
 
int main()
    {
    sales sales1;
    }

файл два sample21
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
#include <stdafx.h>
#include <iostream>
#include "incl.h"
 
using namespace nssales;
using namespace std;
 
    sales::sales()
{
    createnssales();
}
 
    sales::sales(const double *ar)
{
    for(int i=4, j=0; i>0; i--, j++0)
    {ar[j] = sale[0]};
}
    sales::createnssales()
{
    for(int i=4, j=0, a=1; i>0; i--, j++, a++)
    {
    cout << "Enter quoter data" <<  a << "or zero\n";
    cin >> sale[j];
    }
}
 
    setsales();
{
    createnssales();
    max = sale[0];
    for(int i=3, j=1; i>0; i--)
    {
        if(max<sale[j])
            max = sale[j];
    }
    min = sale[0];
    for(int i=3, j=1; i>0; i--)
    {
        if(max>sale[j])
            max = sale[j];
    }
    average = 0
    for(int i=4, j=0, a=0; i>0; i--, j++)
    {
        if(sale[j])
        {
            average+=sale[j];
            a++;
        }
    average\=a
    }
}
файл три incl.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
namespace nssales
    {
    const int quot = 4;
    class sales
        {
        private:
        double sale[quot];
        double average;
        double max;
        double min;
 
        public:
        sales();
        sales(const double *ar);
        void setsales();
        void showsales(const sales &s);
        };
}

1>------ Построение начато: проект: sample2, Конфигурация: Debug Win32 ------
1>Компоновка...
1>sample2.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall nssales::sales::sales(void)" (??0sales@nssales@@QAE@XZ) в функции _main
1>C:\Documents and Settings\xa\Мои документы\Visual Studio 2008\Projects\sample2\Debug\sample2.exe : fatal error LNK1120: 1 неразрешенных внешних элементов
1>Журнал построения был сохранен в "file://c:\Documents and Settings\xa\Мои документы\Visual Studio 2008\Projects\sample2\sample2\Debug\BuildLog.htm"
1>sample2 - ошибок 2, предупреждений 0
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
Yandex
Объявления
20.01.2011, 12:43     error LNK2019: ссылка на неразрешенный внешний символ
Ответ Создать тему
Опции темы

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