c++11

¿Se pueden templar las funciones lambda?

En C++11, ¿hay alguna forma de templar una función lambda? ¿O es inherentemente demasiado específico para ser templada? Enti ... clase/funtor con plantilla clásica en su lugar, pero la pregunta es más como: ¿el lenguaje permite templar funciones lambda?

¿Puede el código C++ ser válido tanto en C++03 como en C++11, pero hacer cosas diferentes?

¿Es posible que el código C++ se ajuste tanto al estándar C++03 como al estándar C++11, pero hacer cosas diferentes dependiendo de bajo qué estándar se está compilando?

Reglas de invalidación del iterador

¿Cuáles son las reglas de invalidación del iterador para contenedores C++? Preferiblemente en formato de lista resumida. ( ... zó en primer lugar, por lo que su es muy probable que la respuesta sea leída por aquellos a quienes se les ocurrió la idea.)

¿Cómo paso un argumento ptr único a un constructor o una función?

Soy nuevo en mover semántica en C++11 y no sé muy bien cómo manejar parámetros unique_ptr en constructores o funciones. Consi ... da? Base::UPtr b1; Base::UPtr b2(new Base()); b1->setNext(b2); //should I write b1->setNext(std::move(b2)); instead?

¿Qué son las semánticas de movimiento?

Acabo de terminar de escuchar la entrevista de podcast de Software Engineering radio con Scott Meyers con respecto a C++0x. L ... dad estoy entusiasmado con C++0x ahora, con la excepción de una. Todavía no consigo mover semántica ... ¿Qué son exactamente?

¿Por qué debería usar un puntero en lugar del objeto en sí?

Vengo de un entorno Java y he empezado a trabajar con objetos en C++. Pero una cosa que se me ocurrió es que la gente a menud ... upongo que tiene que ver con la eficiencia y velocidad ya que tenemos acceso directo a la dirección de memoria. ¿Tengo razón?

Elegir entre std:: mapa y std:: mapa desordenado

Ahora que std tiene un mapa hash real en unordered_map, ¿por qué (o cuándo) todavía querría usar el viejo map sobre unordered_map en sistemas donde realmente existe? ¿Hay alguna situación obvia que no pueda ver inmediatamente?

std:: enable if para compilar condicionalmente una función miembro

Estoy tratando de obtener un ejemplo sencillo para entender cómo usar std::enable_if. Después de leer esta respuesta , pensé ... sobrecarga proviene del problema de que g++ no elimina la segunda función miembro y cree que esto debería ser una sobrecarga.

std:: auto ptr a std:: ptr único

Con el nuevo estándar que viene (y partes ya disponibles en algunos compiladores), el nuevo tipo std::unique_ptr se supone qu ... tación? También si es un reemplazo directo (por qué darle un nuevo nombre) en lugar de simplemente mejorar el std::auto_ptr.

Uso de objetos genéricos std:: function con funciones miembro en una clase

Para una clase quiero almacenar algunos punteros de función a funciones miembro de la misma clase en un map que almacena obje ... en algunas reglas extrañas de C++ que no sigo. EDITAR: Hago NO usar impulsar. Esto es C++11 integrado en el MS compilador.

¿Puede modern C++ obtener rendimiento de forma gratuita?

A veces se afirma que C++11/14 puede obtener un aumento de rendimiento incluso cuando simplemente compila código de C++98. La ... o (evitar copias, pero si usted puede llegar a cualquier otra cosa además de mover semántica, yo también estaría interesado)

¿Cómo es " int principal(){(([](){})());}" ¿c++válido?

Recientemente me encontré con el siguiente fragmento de código esotérico. int main(){(([](){})());} Reformatearlo de la si ... código válido que sea tan extraño fuera de Javascript y C punteros de función. ¿Puede alguien explicar cómo es válido C++?

¿Por qué std:: list:: reverse tiene complejidad O(n)?

¿Por qué la función inversa para la clase std::list en la biblioteca estándar de C++ tiene tiempo de ejecución lineal? Yo pe ... ría haber sido O (1). Invertir una lista doblemente vinculada solo debería implicar cambiar los punteros de cabeza y cola.

C++11 introdujo un modelo de memoria estandarizado. ¿Qué significa? ¿Y cómo va a afectar la programación en C++?

C++11 introdujo un modelo de memoria estandarizado, pero ¿qué significa exactamente eso? ¿Y cómo va a afectar la programación ... nas de multi-threading, y lo que significa el modelo de memoria en general, por favor ayúdame a entender estos conceptos. :-)

Plantilla C++ typedef

Tengo una clase template<size_t N, size_t M> class Matrix { // .... }; Quiero hacer un typedef que crea un Vecto ... c Matrix<N,1> { }; ¿Existe una solución o una solución alternativa / mejor práctica no demasiado costosa para ello?

El uso de este puntero causa una extraña desoptimización en hot loop

Recientemente me encontré con una extraña desoptimización (o más bien una oportunidad de optimización perdida). Considere es ... estoy equivocado aquí . Cachear un puntero de miembro en un hot loop parece ser un técnica de optimización manual necesaria.

Módulos C++ - ¿por qué se eliminaron de C++0x? ¿Volverán más tarde?

Acabo de descubrir este antiguo borrador de C++0x sobre módulos en C++0x. La idea era salir de la corriente .h.sistema cp ... emasiadas dificultades técnicas? ¿Falta de tiempo? Y crees que ¿considerará trabajar en él para una versión posterior de C++?

Generar números aleatorios usando la biblioteca aleatoria de C++11

Como sugiere el título, estoy tratando de encontrar una manera de generar números aleatorios utilizando la nueva biblioteca C ... ndo verdaderamente aleatorias? Para mi caso de uso particular, estaba tratando de obtener un valor dentro del rango [1, 10]

¿Qué sucede si se emite un valor no válido estático a la clase enumeración?

Considere este código C++11: enum class Color : char { red = 0x1, yellow = 0x2 } // ... char *data = ReadFile(); Color colo ... e verificar un error aquí? EDITAR: Como un bono, ¿el estándar hace alguna garantía sobre esto sino con enumeración simple?

¿Para qué sirven los espacios de nombres en línea?

C++11 permite inline namespace s, todos los miembros de los cuales también están automáticamente en el adjunto namespace. No ... pace inline en una pero no en todas las declaraciones, que pueden vivir en archivos diferentes. ¿No es esto pedir problemas?)