Question

I have a typedef defined in my code as

typdef unsigned int size_t;

it is conflicting with stddef's

typedef __SIZE_TYPE__ size_t;

I'm unsure how to get around this but would still like to keep size_t in my code.

Was it helpful?

Solution

Two Three options:

1) Pick a different name, I think you already got that.

2) Use a namespace:

namespace X
{
   typedef long size_t;
}

and the type as

X::size_t x;

3) Ugly, guaranteed to get you fired, and me downvoted:

typedef unsigned int my_size_t;
#define size_t my_size_t

OTHER TIPS

It is probably a bad idea to try to redefine a type that's in one of the standard headers. What are you trying to accomplish? Why don't you want to use the standard size_t definition?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top