¿Cómo se puede verificar si se establece una constante en el tiempo de ejecución? Por ejemplo, en iOS 4, UIApplicationDidEnterBackgroundNotification está disponible, pero cuando se ejecuta en iOS 3 se producirá un error si intenta usarlo.iPhone, compruebe la existencia de constante
6
A
Respuesta
12
Probablemente deberías mirar this other question, que en mi opinión también responde la tuya. if (&UIApplicationWillEnterForegroundNotification != NULL)
debe ser dynamic-linking-safe y decirle si la constante existe o no.
Cuestiones relacionadas
- 1. Compruebe el archivo existencia en hormiga
- 2. Verifique la existencia de tareas programadas y compruebe el estado
- 3. ¿Detecta la existencia de una cámara en la aplicación iPhone?
- 4. Compruebe la existencia de la clave en una matriz multidimensional en javascript
- 5. Buscar existencia de número en una lista ordenada en tiempo constante? (Pregunta de la entrevista)
- 6. JS: compruebe la existencia de una var que es igual a 0
- 7. iPhone - GCD compruebe si se suspende la cola
- 8. Compruebe si la constante se define en tiempo de ejecución en Obj-C
- 9. Codificación de valor-clave de iPhone - prueba de existencia de la clave
- 10. Verifique la existencia de la clave YAML
- 11. decisión de tipo basado en la existencia de typedef anidada
- 12. ¿Cómo detectar la existencia de una clase usando SFINAE?
- 13. ¿Buscar existencia de archivos en la carpeta androids assets?
- 14. ¿Evita el sondeo constante de iPhone de un servicio web?
- 15. verificar existencia de propiedad
- 16. Cómo verificar la existencia de archivos
- 17. ¿Cómo verificar la existencia de un DB?
- 18. DataRow ADO.NET - verificar la existencia de columnas
- 19. iPhone SDK: compruebe si se muestra un UIAlertView
- 20. Comprobando la existencia del miembro en Python
- 21. Java isFile(), isDirectory() sin verificar la existencia
- 22. Comprobar la existencia de la función Streetview de Google
- 23. Verifica la existencia de la mesa antes de soltarla?
- 24. Chef - Prueba de cookbook_file existencia
- 25. Postgresql: compruebe si existe el esquema
- 26. verificación de iPhone para una constante en tiempo de ejecución en la aplicación universal
- 27. Python ConfigParser: Comprobando la existencia de la opción
- 28. ¿Cómo puedo verificar la existencia de una variable de entorno?
- 29. iteración del archivo, comprobación de la existencia de línea
- 30. Comprobación de la existencia de archivos en el servidor FTP
Si está utilizando LLVM, tiene que hacer algunos trucos para que no disminuya su estado de cuenta. Esto funciona para mí BOOL backgroundOK = & UIApplicationDidEnterBackgroundNotification! = NULL; if (backgroundOK) { [[NSNotificationCenter defaultCenter] addObserver: auto selector: @selector (applicationDidEnterBackground :) nombre: UIApplicationDidEnterBackgroundNotification bject: nil]; } –
¿Este error del optimizador ya se ha corregido en el compilador LLVM/Clang? En que version? –
No es un error en LLVM, sino una característica. LLVM optimizará las declaraciones de salida sin efectos secundarios y es bueno. Pero hace las cosas un poco más difíciles para este tipo de código. – Romain