I have to define new instances of a type Inst
with some arguments …
using the syntax NEWNSTANCE
where NEWINSTANCE
is a macro. It is clear that with the follow code the compiler will complain about a redefinition of ex
but I have to follow this syntax.
// error redefinition ok very clear
#define NEWINSTANCE Inst ex(…)
int main() {
NEWINSTANCE;
NEWINSTANCE;
NEWINSTANCE;
}
I can't write NEWINSTANCE(name)
to get inst name(…)
. Now I want to create “random” names for new instances. I don't care about the specific names.
Is possible to write something like ex ## __LINE__ (…)
to have something like Inst ex1(…)
, Inst ex2(…)
and multiple of them?
I am thinking of something like this but it is not working as expected.
#define NEWINSTANCE Inst ex ## __LINE__ (…)
int main() {
NEWINSTANCE; // Inst ex6(…)
NEWINSTANCE; // Inst ex7(…)
NEWINSTANCE; // Inst ex8(…)
}