I'd really love to wait until my earlier thread is off the top of the list, as spam is something everyone is willing to give, but no one wants, but regrettably, time is not a resource I currently have masses of, so I'll have to post this now.
I'm having a big problem. I have a project (not even near completion) which compiles fine. Now, in that project, I have a class called 'Task', in the 'ASC-Task.hpp' file, as seen here:
ASC-Task.hpp
#ifndef ASC_TASK_HPP
#define ASC_TASK_HPP
#include "ASC-Define.hpp"
#include "ASC-TaskManager.hpp"
#include "ASC-Callbacks.hpp"
namespace ASC
{
namespace Core
{
class Task
{
public:
Task();
virtual ~Task();
virtual ASCCB * Update() = 0;
virtual ASCCB * OnKill() = 0;
friend class TaskManager;
protected:
void SetVals(ASCSINT id, ASCSTRING name, ASCSTRING desc);
ASCSINT taskID;
ASCSTRING taskName;
ASCSTRING taskDescription;
private:
};
}
}
#endif
Now, that looks fine, is implemented (not the pure virtual functions of course..) and compiles just fine with the rest of my project. However, when I add another header file, 'ASC-EntryTask', which inherits from ASC::Core::Task, I get a host of odd syntax errors in
every single file, where there were none before. And I don't mean a small amount of errors, where there were 0, now there are 646... And that seems VERY odd to me, because nothing has changed in any of the files, except adding the '#include ".\Core\ASC-EntryTask.hpp" to the shared header file that all .cpp files include. Here's an example of one of the vexing errors.. Get a load of this:
error C2039: 'cout' : is not a member of 'std'.
Not only that kind of error, but it's spitting out a load of syntax errors for no reason at all... Rather puzzling, to say the
least. Anyway, without further ado, I give you 'ASC-EntryTask.hpp', the file which apparently is causing all my problems.
ASC-EntryTask.hpp
#ifndef ASC_ENTRYTASK_HPP
#define ASC_ENTRYTASK_HPP
#include "ASC-Define.hpp"
#include "ASC-Task.hpp"
namespace ASC
{
namespace Core
{
class EntryTask : public Task
{
public:
EntryTask();
~EntryTask();
virtual ASCCB * Update() = 0;
virtual ASCCB * OnKill() = 0;
protected:
private:
};
}
}
#endif
I really can't make anything of this, so if anyone here would be kind enough to perhaps tell me why everything is so screwed with the addition of that file, I'd be quite thankful [smile] Cheers!
[EDIT] In case anyone notices the line:
class EntryTask : public Task
Should I include the full name there, that is, ASC::Core::Task there? Because it seems that at least for friend declarations, I can't do that, or it gives me an error.
[Edited by - SirLuthor on February 9, 2005 5:10:45 AM]
Free speech for the living, dead men tell no tales,Your laughing finger will never point again...Omerta!Sing for me now!