He define mediante typedef en mi código comoen conflicto declaración
typdef unsigned int size_t;
que está en conflicto con la stddef
typedef __SIZE_TYPE__ size_t;
estoy seguro de cómo evitar esto pero quiere mantener size_t en mi código.
He define mediante typedef en mi código comoen conflicto declaración
typdef unsigned int size_t;
que está en conflicto con la stddef
typedef __SIZE_TYPE__ size_t;
estoy seguro de cómo evitar esto pero quiere mantener size_t en mi código.
Dos tres opciones:
1) elegir un nombre diferente, creo que ya tiene eso.
2) Utilizar un namespace
:
namespace X
{
typedef long size_t;
}
y el tipo como
X::size_t x;
3) Feo, con garantía de que te despidan, y me downvoted:
typedef unsigned int my_size_t;
#define size_t my_size_t
AHH. Me gusta tu respuesta mejor. El problema es que esto es para un proyecto y el tamaño type_t typedef en mi código es algo que no puedo cambiar. ¡Gracias! – user1496542
@ user1496542 ok, vea la respuesta editada. –
jajaja bien. la respuesta del espacio de nombres todavía gana para mí, pero gracias de nuevo! :) – user1496542
Probablemente sea una mala idea intentar redefinir un tipo que está en uno de los encabezados estándar. ¿Qué está tratando de lograr? ¿Por qué no quieres usar la definición standard size_t?
Esto debería ser un comentario que dice "Elige un nombre diferente". : P – jrok
LOL, tienes razón, esa parece ser la dirección que la gente ha tomado. – jwismar
Lo haría si pudiera, pero esto es para un proyecto que no puedo cambiar ese nombre. Gracias por las sugerencias :) – user1496542
Elija una nombre diferente o ponerlo en un espacio de nombres. – jrok
Simplemente elige un nombre diferente. –
Elija un nombre diferente. –