С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
81 / 40 / 22
Регистрация: 03.05.2013
Сообщений: 722
1

Ошибка 19 error LNK2005. Многофайловое приложение

31.01.2015, 17:02. Показов 2302. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
У меня возникает ошибка

C++
1
2
3
Ошибка    19  error LNK2005: "void __cdecl set_0(double *,int)" (?set_0@@YAXPANH@Z) уже определен в ExampleEditor.obj
 
Ошибка    20  error LNK1169: обнаружен многократно определенный символ - один или более
в случае

C++
1
2
3
4
5
void set_0 (double* array, int size)
{
        for(int i = 0; i < size; i++)
                array[i] = 0;
};
Если я меняю на

C++
1
2
3
4
5
inline void set_0 (double* array, int size)
{
        for(int i = 0; i < size; i++)
                array[i] = 0;
};
Ошибки нету. В чём может быть дело?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.01.2015, 17:02
Ответы с готовыми решениями:

ошибка error LNK2005
В проекте структура и bool сравнение двух экземпляров . Выдает эту ошибку и fatal error LNK1169......

Ошибка nafxcw.lib(afxglobals.obj) : error LNK2005
Доброго времени суток, Проект был выполнен на Visual Studio C++ 6 на Windows95. Мне было поручено...

SharpDevelope - многофайловое приложение
Привет всем. Не могу разобраться как в SharpDevelope создать отдельный файл для интерфейса и...

Многофайловое приложение в CodeBlocks
задание состоит в том,что надо переделать программу через функции вот что получилось у меня что я...

5
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
31.01.2015, 17:06 2
Лучший ответ Сообщение было отмечено zasadadada как решение

Решение

В заголовочном файле функция-то?

Цитата Сообщение от zasadadada Посмотреть сообщение
В чём может быть дело?
У функции в С++ внешнее связывание по-умолчанию.
Выноси определение функции в отдельный *.cpp, чтобы избежать ошибки.
1
81 / 40 / 22
Регистрация: 03.05.2013
Сообщений: 722
31.01.2015, 17:15  [ТС] 3
Да я пишу в H файлах. Думал проблем не будет.
0
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
31.01.2015, 17:18 4
Цитата Сообщение от zasadadada Посмотреть сообщение
Да я пишу в H файлах. Думал проблем не будет.
Советую почитать информацию по темам "единица трансляции", "препроцессор" и "связывание" в программах на С++. Многое встанет на свои места.
0
81 / 40 / 22
Регистрация: 03.05.2013
Сообщений: 722
31.01.2015, 19:13  [ТС] 5
Ещё вопрос по теме, скажите раньше я цеплял в самом начале H файл с функциями, и функции были видны везде (ниже по коду), а сейчас когда я начал использовать CPP , мне нужно этот файл с функциями в каждый CPP подключать где они используются?
0
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
31.01.2015, 19:33 6
Цитата Сообщение от zasadadada Посмотреть сообщение
Ещё вопрос по теме, скажите раньше я цеплял в самом начале H файл с функциями, и функции были видны везде (ниже по коду), а сейчас когда я начал использовать CPP , мне нужно этот файл с функциями в каждый CPP подключать где они используются?
Зачем?
Прототип функции остается как и раньше, в h. В cpp вынесена только реализация функция. Соответственно ты цепляешь h-файл как и раньше.
0
31.01.2015, 19:33
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.01.2015, 19:33
Помогаю со студенческими работами здесь

Класс Complex, многофайловое приложение
Начал изучать классы недавно. При решение задачи возникла ошибка, не могу понять в чем дело....

Как компоновать многофайловое приложение
Здравствуйте. В файле GradeBook.cpp ошибки: undefined reference to `WinMain@16' ld returned 1...

Вычисление функции - сделать многофайловое приложение
function y(x,a:real):real; var t,w:real; begin t:=1-sqr(sin(x)); w:=a*a-x*x;...

Раздельная компиляция. Преобразовать код в многофайловое приложение
нужна помощь в преобразовании кода программы для разделенной трансляции (заголовочный код, код...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru