Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Проблема с include'ом vector'а |
Автор: Altaire 23.5.2010, 22:28 | ||
Проблема аключается в том, что при include'ировании <vector> в объявлении класса выдаётся ошибка дупликации некоторых методов vector'а в главном файле и в файле инициализации класса. Чтобы было более понятно:
При линковании выдаёт ошибки: Info :Transferring to C:\BC5\BIN\tlink.exe @C:\BC5\works\proj0000.r$p Error: (1,1):std::vector<bool>::insert_aux(std::vector<bool>::iterator,... defined in module scene.cpp is duplicated in module proj_angi.cpp Error: (1,1):std::vector<bool>::resize(unsigned int,bool) defined in module scene.cpp is duplicated in module proj_angi.cpp Error: (1,1):std::vector<bool>::insert(std::vector<bool>::iterator,const bool far&) defined in module scene.cpp is duplicated in module proj_angi.cpp Error: (1,1):std::vector<bool>::insert(std::vector<bool>::iterator,short,... defined in module scene.cpp is duplicated in module proj_angi.cpp Error: (1,1):std::vector<bool>::flip() defined in module scene.cpp is duplicated in module proj_angi.cpp Error: (1,1):std::swap(std::vector<bool>::reference) defined in module scene.cpp is duplicated in module proj_angi.cpp Fatal: (1,1): Bad object file record in module proj_angi.cpp near module file offset 0x000058A1 Помогите, чем сможете... |
Автор: SVN74 23.5.2010, 22:33 |
#include "scene.cpp" |
Автор: Altaire 23.5.2010, 22:35 |
Нет, то же самое... |
Автор: SVN74 23.5.2010, 22:43 |
А что у вас еще инклюдится в proj_angi.cpp?, также переправьте #include <vector> на #include <vector.h> Бюлдер любит полные имена |
Автор: Altaire 23.5.2010, 22:46 | ||
Ничто из этого(и robot и bullet) не зависит от вектора. |
Автор: Alek86 23.5.2010, 22:47 |
SVN74, что это еще за извращения, cpp подключать? может компилер старый, ODR (one definition rule) не поддерживает? а лучше покажи, как ты именно vector<bool> используешь |
Автор: Altaire 23.5.2010, 22:47 |
Полное имя тоже не влияет Добавлено через 1 минуту и 15 секунд vector пока вообще не использовал. Юзаю Borland C++ 5.02 |
Автор: SVN74 23.5.2010, 23:02 |
Перенесите #include <vector.h> в scene.cpp |
Автор: Altaire 23.5.2010, 23:06 |
Вроде работает, но в объявлении класса требуется объявления vector<Bullet>... А это уже опять с самого начала... |
Автор: Alek86 23.5.2010, 23:08 |
Altaire, нет ли возможности поменять компилер? |
Автор: Altaire 23.5.2010, 23:10 |
Alek86, На какой, например? |
Автор: Alek86 23.5.2010, 23:27 |
visual studio 2005 или больше |
Автор: Altaire 23.5.2010, 23:39 |
Приложение основано на BGI графике для DOS, а разработку под DOS Visual Studio, вроде, не поддерживает... P.S. Visual Studio скорее не компилер, а среда разработки... Хотя это к делу не относится. |