Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/55: Рейтинг темы: голосов - 55, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 20.05.2010
Сообщений: 7
1

error LNK1120: 1 неразрешенных внешних элементов

26.12.2011, 20:49. Показов 10171. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
/*Person.h*/
class Person {
 
        char Name[50];
        char FatherName[50];
        char SurName[50];
        int Byyyy;
        int Bmm;    
        int Bdd;    
             static int BaseSalary;
             float percentAdd;
            static void setBaseSalary(int BS=0);
            float Salary;
public:
        void init (const char surName[],const  char Name[], const char fatherName[]);
        
        void setName (const char Nm[]);         
        void setFatherName (const char Fnm[]);
        void setSurName (const char Snm[]); 
        char* getName ();
        char* getFatherName ();
        char* getSurName();
        void setBirthday (int dd, int mm, int yyyy);
        int getBdd();
        int getBmm();
        int getByyyy();             
    Person();
    Person(const char surname[],const char name[],const char fathername[],int bdd,int bmm, int byyyy,float percentadd);
    Person( const Person& person);
                    
    void personPrint();
            void setPercentAdd(float Pa);
            float getPercentAdd();
            float getSalary();
 
};
/*Person.cpp*/
...............
        void Person::setBaseSalary(int Bs)
    {
        BaseSalary=Bs;
    }
        float Person::getSalary()
    {
        return BaseSalary+BaseSalary*getPercentAdd()/100;
    }
...............

После добавления static int BaseSalary и его сэтера линкер начал ругаться:
1>person.obj : error LNK2001: неразрешенный внешний символ ""private: static int Person::BaseSalary" (?BaseSalary@Person@@0HA)"
1>C:\Users\Alexander\Desktop\C++\ООП\Lab5\Debug\la5.exe : fatal error LNK1120: 1 неразрешенных внешних элементов
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.12.2011, 20:49
Ответы с готовыми решениями:

Error LNK1120: неразрешенных внешних элементов: 1
Подскажите где ошибка??? //файл sourse.h #include <iostream> using namespace std; ...

error LNK1120: 2 неразрешенных внешних элементов
Всем привет! В чем может быть проблема и как её устранить! пишет вот так Ошибка 3 error...

Error LNK1120: неразрешенных внешних элементов: 2
Доброго времени суток. Не могу понять в чем ошибка. Подскажите, пожалуйста. Задание: Программно...

Error LNK1120: неразрешенных внешних элементов: 1
#include <iostream> #include <fstream> #include <locale.h> #include <stdlib.h> #include...

3
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
26.12.2011, 21:04 2
попробуй добавить в Person.cpp:
int Person::BaseSalary = 0;
1
0 / 0 / 0
Регистрация: 20.05.2010
Сообщений: 7
26.12.2011, 21:07  [ТС] 3
Цитата Сообщение от igorrr37 Посмотреть сообщение
попробуй добавить в Person.cpp:
int Person::BaseSalary = 0;
спасибо.

я так понял, в случае static это обязательно нужно делать, да?!
0
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
26.12.2011, 21:22 4
Для инициализации нужно знать, где находится статическая переменная, этой информации нет в объявлении класса. Когда вы пишете int A::counter вы указываете место, где эта перменная будет создана и можете ее иницилизировать.
1
26.12.2011, 21:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.12.2011, 21:22
Помогаю со студенческими работами здесь

Fatal error LNK1120: 1 неразрешенных внешних элементов
Товарищи помогите второй день мучаюсь, не могу найти ошибку. В ООП я новичок и я так думаю ошибка в...

Ошибка С++: error LNK1120: неразрешенных внешних элементов: 2
Ошибка 3 error LNK1120: неразрешенных внешних элементов: 2 c:\users\felix cukerman\documents\visual...

Ошибка 3 error LNK1120: неразрешенных внешних элементов: 2
Добрый день. Возникла такая проблема. При компиляции показывает 3 ошибки. Ошибка 1 error...

fatal error LNK1120: 1 неразрешенных внешних элементов
ту проблему исправил. #include <iostream> #include <conio.h> using namespace std; class...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru