A
alariq
Hello, All
can anyone help me with my problem. Here is it
I have one file: a.h
--- a.h ---
#pragma once
class Value; // forward declaration
namespace a {
// probably i would like to create Joint class as separate but now
i want to use Value class
typedef ::Value Joint;
class A_Class {
};
class C {
public:
//...
Joint* j;
};
} // end of namespace
and another class b.h, which includes a.h
--- b.h ---
#pragma once
#include "a.h"
class Value {
a::A_Class* pclass;
public:
static Value* makeStuff() { return new Value; }
}
and a main class
--- main.cpp ---
#include "b.h"
#include "a.h" // not really needed
int main(int argc, char** argv)
{
a::C var2;
var2.j = new a::Joint::makeStuff(); // error C2061: syntax error :
identifier 'makeStuff'
return 0;
}
I canot get why i have an error, becuase a::Joint is the same as
Value. It is ok if i do not use the function but fails if i do.
Thanks in advance.
can anyone help me with my problem. Here is it
I have one file: a.h
--- a.h ---
#pragma once
class Value; // forward declaration
namespace a {
// probably i would like to create Joint class as separate but now
i want to use Value class
typedef ::Value Joint;
class A_Class {
};
class C {
public:
//...
Joint* j;
};
} // end of namespace
and another class b.h, which includes a.h
--- b.h ---
#pragma once
#include "a.h"
class Value {
a::A_Class* pclass;
public:
static Value* makeStuff() { return new Value; }
}
and a main class
--- main.cpp ---
#include "b.h"
#include "a.h" // not really needed
int main(int argc, char** argv)
{
a::C var2;
var2.j = new a::Joint::makeStuff(); // error C2061: syntax error :
identifier 'makeStuff'
return 0;
}
I canot get why i have an error, becuase a::Joint is the same as
Value. It is ok if i do not use the function but fails if i do.
Thanks in advance.