Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Van111
кодер с++
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
#1

глюк с определениями - C++

11.06.2012, 15:10. Просмотров 278. Ответов 2
Метки нет (Все метки)

вот файл unit.h
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
#ifndef __unit_h__
#define __unit_h__
 
const int MAXHELF=100;
struct FPOINT
{
    float   x;
    float   y;
};
 
class Tunit
{
public :
int     team;
int     team_agricultural;
FPOINT  location;
FPOINT  moveLocation;
float   max_helf;
float   current_helf;
int     ID_cel; 
float   speed;
Tunit();
void move();
void search();
};
 
 
#endif
вот файл
unit.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef __unit_cpp__
#define __unit_cpp__
#include "unit.h"
 
Tunit::Tunit()
{}
 
void Tunit::move()
{
if(this->location.x<this->moveLocation.x)
        this->location.x+=speed;
    if(this->location.x>this->moveLocation.x)
        this->location.x-=speed;
    if(this->location.y<this->moveLocation.y)
        this->location.y+=speed;
    if(this->location.y>this->moveLocation.y)
        this->location.y-=speed;
}
void Tunit::search()
{
 
}
#endif
выводит такой бред
>unit.obj : error LNK2005: "public: __thiscall Tunit::Tunit(void)" (??0Tunit@@QAE@XZ) уже определен в main.obj
1>unit.obj : error LNK2005: "public: void __thiscall Tunit::move(void)" (?move@Tunit@@QAEXXZ) уже определен в main.obj
1>unit.obj : error LNK2005: "public: void __thiscall Tunit::search(void)" (?search@Tunit@@QAEXXZ) уже определен в main.obj
1>C:\prokects c++\zruns\Debug\zruns.exe : fatal error LNK1169: обнаружен многократно определенный символ - один или более
как с этим бороться ?

Добавлено через 5 минут
компилятор mvs 2008
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2012, 15:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос глюк с определениями (C++):

Подсчитать количество строк во фрагменте программы между определениями макроса - C++
Текст представляет собой программу на языке Си. Подсчитать количество строк во фрагменте программы между определение некоторого макроса...

Глюк печатания и глюк порчи константы - C++
Дамы и господа! Я столкнулся с двумя глюками, которые не нашёл в списке распространённых ошибок. 1) При попытке распечатать массив...

Глюк GetWindowModuleFileName - C++
Пишу продвинутый диспетчер файлов без tlhelp32.lib поэтому решил находить ModulePath с помощью GetWindowModuleFileName но столкнулся с...

Глюк gcc? - C++
Компилируя программу в gcc, выводит от части неверный ответ. В code::blocks все в порядке. Как это понимать? Программа выполняет сдвиг...

Глюк с teelg - C++
int x1 = ifile.tellg(); ifile &gt;&gt;s; x1 = ifile.tellg(); сначала х1 = 1, потом идёт считывание символа f и далее х1 становится равным...

Глюк или ? - C++
я так понимаю, можно &quot;остановить &quot; консоль(не дать закрыться) разными способами кто как делает пишу я себе программу, ставлю как всегда...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DU
1483 / 1059 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
11.06.2012, 15:17 #2
похоже раньше все функции были определены в h файле, в котором не было стражей ключения:
#ifndef __unit_cpp__
#define __unit_cpp__

Хотя может это и не так.

Попробуйте так:
Убедитесь, что в main.cpp не определены методы вашего Tuint.
В cpp файлах стражи включения не нужны. их оттуда нужно удалить. (это про uint.cpp)
После этого в меню
Build->Clean Solution
Build->Rebuild Solution
0
Van111
кодер с++
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
11.06.2012, 15:17  [ТС] #3
всё разобрался mvs сама использует файл unit.cpp. некто не знает где можно почитать о стандартах языка который использует MVC ++ 2008?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.06.2012, 15:17
Привет! Вот еще темы с ответами:

глюк в программе - C++
Дан целочисленный квадратный массив размера m* n, где m и n- натуральные числа. Найти наименьшее из значений элементов столбца, который...

Странный глюк с вектором - C++
Я определил операции: Присвоения: bool s; std::vector&lt;int&gt; v; void operator=(int get_i){ s = get_i &lt; 0; // знак ...

Странный глюк с биндом - C++
static void deXML(XMLBlock* RootBlock,Node* RN=NULL){ std::list&lt;boost::thread&gt; T; Node* SN=new...

Не понятный глюк с cout - C++
Дня доброго Есть небольшая програмулина #include&lt;iostream&gt; #include&lt;string&gt; #include&lt;iomanip&gt; using namespace std; class...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru