Preguntas etiquetadas con c-preprocessor

99
Pragma en definir macro

¿Hay alguna forma de incrustar la declaración pragma en macro con otras declaraciones? Estoy tratando de lograr algo como: #define DEFINE_DELETE_OBJECT(type) \ void delete_ ## type_(int handle); \ void delete_ ## type(int handle); \ #pragma weak delete_ ## type_ = delete_ ## type Estoy de...

90
Concatenar int a string usando C Preprocessor

Estoy tratando de averiguar cómo puedo concatenar un #define'd int a un #define' d string usando el preprocesador C. Mi compilador es GCC 4.1 en CentOS 5. La solución también debería funcionar para MinGW. Me gustaría agregar un número de versión a una cadena, pero la única forma en que puedo...

83
#ifdef dentro de #define

Estoy tratando de escribir algo como esto: #define COV_ON(x) \ #ifdef COVERAGE_TOOL \ _Pragma (COVERAGE #x) #endif ¿Hay alguna forma de definir COV_ONasí? Sé que lo que hice arriba está mal, ya que no puedo tener #ifdefdentro #define. ( #no es un personaje permitido en #define). Entonces,...

81
#define vs const en Objective-C

Soy nuevo en Objective-C y tengo algunas preguntas sobre constla directiva de preprocesamiento #define. Primero, descubrí que no es posible definir el tipo de constante usando #define. ¿Porqué es eso? En segundo lugar, ¿tiene alguna ventaja utilizar uno de ellos sobre el otro? Finalmente, ¿de...

81
Macros de preprocesador de varias líneas

¿Cómo hacer una macro de preprocesador de varias líneas? Sé cómo hacer una línea: #define sqr(X) (X*X) pero necesito algo como esto: #define someMacro(X) class X : public otherClass { int foo; void doFoo(); }; ¿Cómo puedo hacer que esto funcione? Este es solo un ejemplo, la macro...