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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
karl 777
0 / 0 / 0
Регистрация: 29.06.2013
Сообщений: 63
#1

error lnk? - C++

21.07.2013, 11:20. Просмотров 967. Ответов 6
Метки нет (Все метки)

При компиляции вылазит такая штука:
1>ConsoleApplication.obj : error LNK2028: ёё√ыър эр эхЁрчЁх°хээє■ ыхъёхьє (0A0005DE) "public: __thiscall Student_Info::Student_Info(void)" (??0Student_Info@@$$FQAE@XZ) т ЇєэъЎшш "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>ConsoleApplication.obj : error LNK2019: ёё√ыър эр эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы "public: __thiscall Student_Info::Student_Info(void)" (??0Student_Info@@$$FQAE@XZ) т ЇєэъЎшш "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>c:\users\тырф\documents\visual studio 2012\Projects\ConsoleApplication17\Debug\ConsoleApplication17.exe : fatal error LNK1120: эхЁрчЁх°хээ√ї тэх°эшї ¤ыхьхэЄют: 2
В чем может быть ошибка, т.е из-за чего этот тип ошибок появляется?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2013, 11:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос error lnk? (C++):

error lnk 2019 - C++
здраствуйте! решил заняться win api и mfc, открываю книгу "Visual C++. Разработка Windows-приложений с помощью MFC и API-функций" пишу...

Error LNK 2001 - C++
Здрасьте, помогите быдлокодеру разобраться В общем у меня вроде все файлы проекта друг к другу подключены, но вот такие ошибки линовки ...

class String, error lnk - C++
class String { friend std::istream& operator>>(std::istream&, String&); // Функция ввода public: typedef...

Error LNK 2019. VS 2010 - C++
Решил написать программу - суть: попытка создания заготовки для меню. смысл этой проги - тупо выводить на экран 11111111111 ...

Error LNK 2019. Внешняя библиотека DocxFactory - C++
Всем привет! понимаю, что тема уже давно всем надоела и что уже всё что можно по ней сказали, но у меня есть вопрос. Есть внешняя...

Структура наследования базовых/производных классов: error LNK 1104 - C++
Может быть проблема, если я неправильно что-то записал в структуре наследования базовых/производных классов?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
21.07.2013, 11:30 #2
Реализация этого есть?
C++
1
Student_Info::Student_Info(void)
karl 777
0 / 0 / 0
Регистрация: 29.06.2013
Сообщений: 63
21.07.2013, 11:42  [ТС] #3
Я убрал из класса конструктор:
Student_Info(); // Конструктор, содержащий пустой объект
Student_Info(std::istream &); // Конструктор, создающий объект посредством считывания данных из потока
Вот эти строки и все заработало, но почему не пойму?
BigLow
55 / 55 / 2
Регистрация: 07.07.2013
Сообщений: 345
21.07.2013, 12:09 #4
karl 777, покажите всю программу
karl 777
0 / 0 / 0
Регистрация: 29.06.2013
Сообщений: 63
21.07.2013, 12:28  [ТС] #5
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
#include "stdafx.h"
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <iomanip>
#include <conio.h>
 
using namespace std;
 
//---------------------------------------
 
    class Student_Info 
    {
    public:
        //Student_Info();                                                               // Конструктор, содержащий пустой объект
        //Student_Info(std::istream &);                                             // Конструктор, создающий объект посредством считывания данных из потока
 
        std::istream &read(std::istream &);                                         // Функция-член для считывания с потока
 
        std::string name()                                                          // Функция-член для вывода имени
        {
            return n;
        }
 
        double grade() const;                                                       // Функция-член для расчета среднего балла
        double grade_out() 
        {
            return ball;                                                            // Функция-член для вывода среднего балла
        }
 
        bool valid()
        {
            return !homework.empty();                                               // Функция-член для определения есть ли оценки у студента
        }
 
    private:
        double ball;
        std::string n;                                                              // Имя
        std::vector<double> homework;                                               // Оценки студента
    };
 
//---------------------------------------
 
    template <class iter_in, class sum> 
    sum Sum_num (iter_in &b, iter_in &e, sum &t)                                    // Шаблонная функция для нахождения суммы всех оценок
    {
        while (b!=e)
        {
            t+=*b;
            ++b;
        }
 
        return t;
    };
 
//---------------------------------------
 
    istream &read_hw (istream &in, vector<double> &homework)        
    {
        if (in)
        {
            homework.clear();
 
            cout<<"Enter you evaluation: ";
            double x;
            while (in>>x)
                homework.push_back(x);
 
            in.clear();
        }
        
        return in;
    }
 
//---------------------------------------
 
    double median(const vector<double> &hw)                                         // Нахождение медианы в векторе
    {
        double med=hw.size()/2;
 
        return hw.size()%2!=0 ? hw[med] : (hw[med]+hw[med+1])/2.;
    }
 
//---------------------------------------
 
    double sred_arif (const vector<double> &hw)                                     // Нахождение среднего арифметического
    {
        double t=0;
 
        return Sum_num(hw.begin(), hw.end(), t)/hw.size();
    }
 
//---------------------------------------
 
    istream &Student_Info::read(istream &in)
    {
        cout<<"Enter you name: ";
        getline(in, n);
 
        read_hw(in, homework);
        
        double t;
 
        try
        {
            if (!valid() || Sum_num(homework.begin(), homework.end(), t)==0)
                throw 1;
            ball=grade();
        }
        catch(int)
        {
            ball=NULL;
        }
 
        return in;
    }
 
//---------------------------------------
 
    double Student_Info::grade() const                                                              // Расчет средней оценки студента
    {
        return 0.4*median(homework) + 0.4*sred_arif(homework) + 0.2*homework[homework.size()-1];
    }
 
//---------------------------------------
 
    bool pred_string (Student_Info &x, Student_Info &y)
    {
        return x.name()<y.name();
    }
 
//---------------------------------------
 
    bool pred_double (Student_Info &x)
    {
        return x.grade_out();
    }
 
//---------------------------------------
 
    bool pred_ball (Student_Info &x)
    {
        return x.grade_out()>60;
    }
 
//---------------------------------------
 
int main()
{
    vector<Student_Info> students;
    Student_Info record;
    string::size_type max_len=0;
    double t;
 
    while (record.read(cin))
    {
        students.push_back(record);                                             // Ввод и находим имя максимальной длинны
        max_len=max(max_len, record.name().size());
    }
 
    vector<Student_Info>::iterator i=partition(students.begin(), students.end(), pred_double), j=partition(students.begin(), i, pred_ball);
 
    sort(students.begin(), j, pred_string);                                     // Сортируем получивших зачет
    sort(j, i, pred_string);                                                    // Незачет
    sort(i, students.end(), pred_string);                                       // Нет оценок
 
    if (max_len<17)
        max_len=17;
 
    cout<<"Name the student:"<<string(max_len-16, ' ')<<"Sred. ball:"<<endl;
 
    for (vector<Student_Info>::size_type i=0; i!=students.size(); i++)
    {
        cout<<students[i].name()<<string(max_len-students[i].name().size()+1, ' ');
 
        if (students[i].grade_out())
        {
            if (students[i].grade_out()>60)
                cout<<"3"<<endl;
            else
                cout<<"H"<<endl;
        }
        else
            cout<<"No evaluation."<<endl;           
    }
 
    getch();
    return 0;
}
Только сильно не ругайте
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
21.07.2013, 12:45 #6
Цитата Сообщение от karl 777 Посмотреть сообщение
Я убрал из класса конструктор:
Student_Info(); // Конструктор, содержащий пустой объект
Student_Info(std::istream &); // Конструктор, создающий объект посредством считывания данных из потока
Вот эти строки и все заработало, но почему не пойму?
Реализации конструкторов нет.

Добавлено через 1 минуту
Вот так если написать, то будет компилироваться, но конструкторы не будут ничего делать.
C++
1
2
Student_Info(){} // Конструктор, содержащий пустой объект
Student_Info(std::istream &){} // Конструктор, создающий объект посредством считывания данных из потока
karl 777
0 / 0 / 0
Регистрация: 29.06.2013
Сообщений: 63
21.07.2013, 14:13  [ТС] #7
Ага, а что посоветуете почитать про конструктор?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.07.2013, 14:13
Привет! Вот еще темы с ответами:

Работа с tinyxml ошибки LNK 2019 и LNK 2001 - C++
всем привет! скачал архив tinyxml, разархивировал в папку проекта затем написал следующий код: #include &quot;stdafx.h&quot; #include...

Ошибки LNK 2005, LNK 1169 - C++
Не могу найти ошибку в проге: functions.h ----------- #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;conio.h&gt; #include...

LNK 2001 - C++
Error 6 error LNK2001: unresolved external symbol &quot;private: static char * myText::szText&quot; (?szText@myText@@0PADA) test.obj OOPCursEx ...

Исправить ошибку в WxDev-C++: Error with debugging process: GDB Error: error, No source file named main.cpp - C++
Здравствуйте товарищи! Новенький я в си, установил wxDev-C++, скомпилировал, запускаешь - работает, а чтоб пошагово отладка - не...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
21.07.2013, 14:13
Ответ Создать тему
Опции темы

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