¿Puedo usar C ++ 11 con Xcode?

Estoy considerando el uso de algunas características de C ++ 11 (como auto por ejemplo) en algunos proyectos multiplataforma (Windows + Mac). En Windows, Visual Studio admite partes del próximo estándar C ++ 11 que me permitiría simplificar partes de la base de código, así que, naturalmente, me interesaría comenzar a utilizar estas características.

Pero hasta donde yo sé, la versión actual de XCode (3.2.4 + GCC 4.2) no admite ninguna característica de C ++ 11. ¿Puedo actualizar la versión de GCC o la versión de CLang de alguna manera? ¿O debería morderme la lengua y esperar a que Apple empaque una nueva versión en algún momento en el futuro?

Xcode 4.2 finalmente había agregado soporte para C ++ 0X:

  1. En la pantalla de configuración de comstackción del proyecto, active las opciones “Todas”.

  2. En la sección “Opciones de comstackción”, configure el comstackdor como “Apple LLVM compiler 3.0”.

  3. Desplácese hasta la sección “Apple LLVM Compiler 3.0 – Language” y configure “C ++ Language Dialect” en “C ++ 0X” y “C ++ Standard Library” en “libc ++”.

Se sabe que std :: move (), move constructor y R-Value reference funcionan como se esperaba, y estoy probando en std :: thread y std :: atomic.

======= Actualización 2012: =======

Comience con Clang: muchas características de C ++ 11 ahora están disponibles en Clang. Está incluido con Xcode.

======= Respuesta original de enero de 2011: =======

El comstackdor de Intel puede ser el camino más limpio para ir en este momento. http://software.intel.com/en-us/articles/intel-composer-xe/

características de wrt c ++ 0x prometedoras, pero no particularmente estables o destacadas de clang. c ++ sigue siendo muy nuevo para clang.

gcc: relativamente maduro, pero tendrás que escribir y mantener tus complementos de comstackción para xcode.

también puede especificar scripts personalizados, pero eso es difícil de mantener … a menos que vaya a por todas y cree una herramienta de adaptador.

Xcode usa los comstackdores GCC o Clang C ++. Cualquier característica admitida por esos comstackdores es juego limpio. La página de compatibilidad de C ++ de GCC está aquí y la página de compatibilidad de Clang C ++ está aquí .

Encontré auto, decltype (), rango basado en “for (:)” trabajo en un proyecto multiplataforma (LLVM para MacOSX, iOS, gcc / linux, MSVC 10 / windows).

Las macros lambdas y variadic no parecen funcionar bajo LLVM todavía con tristeza.