5 / 5 / 6
Регистрация: 04.12.2011
Сообщений: 179

Переопределение операции. Ошибка Error LNK2019: ссылка на неразрешенный внешний символ

06.05.2014, 19:03. Показов 1980. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Возникает такая ошибка:
1 error LNK2019: ссылка на неразрешенный внешний символ "public: class three __thiscall three::operator=(class three)" (??4three@@QAE?AV0@V0@@Z) в функции _main C:\Users\-----


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
#include "stdafx.h"
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
 
class three
{
    int x,y,z;
public:
    three(){x=y=z=0;}
    int getX() const;
    int getY() const;
    int getZ() const;
    three(int i, int j,int k){x=i;y=j;z=k;}
    three operator+(three &op2);
    three operator=(three op2);
    three operator++();
    void Show(void);
};
 
void three::Show(void)
{
    setlocale(LC_ALL,"");
    cout<<" "<<x<<" "<<y<<" "<<y<<endl;
}
int three::getX() const{return x;}
int three::getY() const{return y;}
int three::getZ() const{return z;}
three three::operator+(const three &a)
{
    return three(x+a.getX(),y+a.getY(),z+a.getZ());
}
 
int main()
{
    setlocale(LC_ALL,"");
 
three a(1,2,3),b(10,10,10),c;
a.Show();
b.Show();
c=a+b; //вот если эту строку убираю, то нормально работает. Видимо, я неправильно переопределила операцию +
c.Show();
    system("pause");
    return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.05.2014, 19:03
Ответы с готовыми решениями:

Ошибка error LNK2019: ссылка на неразрешенный внешний символ
Здравствуйте, не уверен в эту ли тему пишу, но в теме специализированой по OpenGL мне ни кто ничего не сказал( Так вот, начал разбираться с...

Ошибка 1 error LNK2019: ссылка на неразрешенный внешний символ
Ошибка 1 error LNK2019: ссылка на неразрешенный внешний символ &quot;public: void __thiscall EDeque&lt;int&gt;::push_front(int const &amp;)&quot;...

Ошибка: error LNK2019: ссылка на неразрешенный внешний символ...
Не могу понять ошибку в своей программе! Ничего красным не подчёркивается, но программа не запускается. В окне &quot;Вывод&quot; в разделе...

5
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,890
06.05.2014, 19:14
ГузелькаС, обратите внимание на различие сигнатур функций в строках 16 и 30, заметили разницу?
1
5 / 5 / 6
Регистрация: 04.12.2011
Сообщений: 179
06.05.2014, 19:18  [ТС]
Заметила, но пока не особо понимаю, как исправить это.
Метод "тык"а тоже пока не помогает.
C++
1
2
3
4
5
three operator+(const three &);
three three::operator+(const three &a)
{
    return three(x+a.getX(),y+a.getY(),z+a.getZ());
}
0
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,890
06.05.2014, 20:01
где реализация вот этого оператора three operator=(three op2); ?
1
5 / 5 / 6
Регистрация: 04.12.2011
Сообщений: 179
06.05.2014, 20:08  [ТС]
я их пока не сделала. проблема из за этого?

Добавлено через 5 минут
закомментировала их. заработало) спасибо) а код переопределения у меня правильно написано ? а то я только методом "тык"а
0
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,890
06.05.2014, 20:13
Лучший ответ Сообщение было отмечено ГузелькаС как решение

Решение

ГузелькаС,
C++
1
2
3
4
5
6
7
8
three& three::operator=(const three & rhs) {
    if (this != &rhs) {
        this->x = rhs.x;
        this->y = rhs.y;
        this->z = rhs.z;
    }
    return *this;
}
Добавлено через 2 минуты
Цитата Сообщение от ГузелькаС Посмотреть сообщение
а код переопределения у меня правильно написано ? а то я только методом "тык"а
да. так же поправьте определение operator= как у меня в предыдущем посте.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.05.2014, 20:13
Помогаю со студенческими работами здесь

Ошибка error LNK2019: ссылка на неразрешенный внешний символ
Здравствуйте! Помогите пожалуйста! Компоновщик выдаёт ошибку error LNK2019: ссылка на неразрешенный внешний символ &quot;class...

Ошибка линковки - error LNK2019: ссылка на неразрешенный внешний символ
Что может быть не так? есть файл test.h #ifndef _T_ #define _T_ template&lt;class T&gt; class test { //.... };

Ошибка при написании класса: error LNK2019: ссылка на неразрешенный внешний символ
Код: int _tmain(int argc, _TCHAR* argv) { Fraction x, x2, y, y2, fl, res, c; cout &lt;&lt; &quot;...&quot; &lt;&lt; endl; x.setFraction(); ...

Не могу разобраться где ошибка!error LNK2019: ссылка на неразрешенный внешний символ
#include &quot;stdafx.h&quot; #include &quot;conio.h&quot; #include &quot;stdio.h&quot; #include &quot;stdlib.h&quot; #include &quot;string.h&quot; #include &quot;math.h&quot; #include...

Структуры/Работа с файлами(ошибка линковщика error LNK2019: ссылка на неразрешенный внешний символ)
Задание: Дан файл содержащий сведения о видах журналов редакции.Структура записи файла: -код журнала -название -год выпуска ...


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

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

Новые блоги и статьи
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
Полностью асинхронный счётчик на логике (сумматорах) трёх состояний и асинхронных регистрах трёх состояний. Структура "электронный Buttom Up"
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
Автоматизация Amazon Web Services (AWS) с Boto3 в Python
py-thonny 25.04.2025
Облачные вычисления стали неотъемлемой частью современной ИТ-инфраструктуры, а Amazon Web Services (AWS) занимает лидирующие позиции среди провайдеров облачных услуг. Управление многочисленными. . .
Apache Kafka vs RabbitMQ в микросервисной архитектуре
ArchitectMsa 25.04.2025
Современная разработка ПО всё чаще склоняется к микросервисной архитектуре — подходу, при котором приложение разбивается на множество небольших, автономных сервисов. В этой распределённой среде. . .
Параллельное программирование с OpenMP в C++
NullReferenced 24.04.2025
Параллельное программирование — подход к созданию программ, когда одна задача разбивается на несколько подзадач, которые могут выполняться одновременно. Оно стало необходимым навыком для. . .
Цепочки методов в C# с Fluent API
UnmanagedCoder 24.04.2025
Современное программирование — это не только решение функциональных задач, но и создание кода, который удобно поддерживать, расширять и читать. Цепочки методов и Fluent-синтаксис в C# стали мощным. . .
Мульти-тенантные БД с PostgreSQL Row Security
Codd 23.04.2025
Современные облачные сервисы и бизнес-приложения всё чаще обслуживают множество клиентов в рамках единой программной инфраструктуры. Эта архитектурная модель, известная как мульти-тенантность, стала. . .
Реализация конвейеров машинного обучения с Python и Scikit-learn
AI_Generated 23.04.2025
Мир данных вокруг нас растёт с каждым днём, и умение эффективно обрабатывать информацию стало необходимым навыком. Специалисты по машинному обучению ежедневно сталкиваются с задачами предобработки. . .
Контроллеры Kubernetes Ingress: Сравнительный анализ
Mr. Docker 23.04.2025
В Kubernetes управление входящим трафиком представляет собой одну из ключевых задач при построении масштабируемых и отказоустойчивых приложений. Ingress — это API-объект, который служит вратами. . .
Оптимизация кода Python с Cython и Numba
py-thonny 23.04.2025
Python прочно обосновался в топе языков программирования благодаря своей простоте и гибкости. Разработчики любят его за читабельность кода и богатую экосистему библиотек. Но у этой медали есть и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru