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.
The compiler expects a *type* after 'new'. For example,
var2.j = new a::Joint;
What is it you're trying to accomplish here?
> 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.
Use the function to do *what*?
V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
Blind I am! Thank you Viktor. I guess, it just was not my hard day
today...