StasK |
Отправлено: 19.09.2006, 10:22 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 1
|
У меня проблема — прога не компилится.
Помогоите пожалуйста.
Вот код с ошибкой:
При компиляции выдает:
Linker Error: Unresolved external "Timer::undefine()" at SUBKADR.OBJ
Если из метода SubKadr::clear() (см.ниже) убрать строчку t.undefine(); ,то ошибки не возникает
Файл TextEdit.cpp:
#include "SubKadr.h"
.
.
.
В глобальном методе
ReadRes Sinhro(Factory &f, Timer &t, TRichEdit *reListing){
.
.
.
SubKadr *s = new SubKadr();
s->clear();
.
.
.
}
Файл SubKadr.h:
#ifndef SubKadrH
#define SubKadrH
#include "CommonHeaders.h"
#include
#include
#include
#include
#include "Timer.h"
class SubKadr{
private:
int size; // хранит свой размер (кол-во субкадров)
Timer t; // хранит время своего начала
.
.
.
public:
SubKadr(int start = 0);
void clear();
};
#endif
Файл Subkadr.cpp:
#include "SubKadar.h"
void Subkadr::clear(){
t.undefine(); // если эту строчку убрать, ошибки не возникает
size = 0;
}
Файл Timer.h:
#ifndef TimerH
#define TimerH
#include "CommonHeaders.h"
#include
#include
#include
#include
class Timer{
int hours, minutes;
int full_time;
public:
Timer();
// Присваивает таймеру неопределенное значение
void undefine();
};
#endif
Файл Timer.cpp:
#include "Timer.h"
Timer::Timer(){
full_time = hours = minutes = -1;
}
// Присваивает таймеру неопределенное значение
inline void Timer::undefine(){
hours = minutes = -1;
full_time = -1;
}
|
|
CyberMind |
Отправлено: 19.09.2006, 11:55 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 29
|
А у меня все компилируется. Попробуй сделать Project>> Build All |
|
GoodWin |
Отправлено: 19.09.2006, 13:10 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 50
|
inline void Timer::undefine(){hours = minutes = -1;full_time = -1;}
Почему inline??? если уж используешь inline,
то необходимо подключать cpp, или делать реализацию в h |
|