На данный вопрос уже ответили:
Было у меня 2 файла: sourse.cpp, vector.cpp. но нужно сделать из vector.cpp vector.cpp и vector.h. в первом файле - реализация, во втором - прототип. Вот код:
vector.h - https://hastebin.com/detiqajefa.cpp
sourse.cpp - https://hastebin.com/uzatasinob.cpp
vector.cpp - https://hastebin.com/cuyehiwuyi.cpp
Что я делаю не так? судя по ошибке переменная определена дважды. но я не вижу где что странно, дал другу этот код, у него работает...
Не нужно инклудить cpp
-файл, это за вас сделает линкер. Каждый cpp
представляет собой отдельный транслируемый модуль. .h
- файлы обычно содержат объявления типов, то есть некие контракты, которые связывают реализации (cpp
).
Почитайте о том, как работает компоновка приложений в Си, это позволит избежать кучи подобных оплошностей.
В файле source.cpp Вы включили vector.cpp:
#include "vector.cpp"
Замените на:
#include "vector.h"
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок