¿Es este C++ válido (teniendo en cuenta el último estándar)? Estoy obteniendo errores de compilación con casi-top-of-tree clang/libC++ en Ubuntu 12.04. Si es válido, enviaré la lista clang-dev con mensajes de error y cosas por el estilo.¿Es unordered_set <reference_wrapper <Ty>> válido?
#include <functional>
#include <unordered_set>
struct X
{
int i;
};
void f()
{
std::unordered_set<std::reference_wrapper<X>> setOfReferencesToX;
// Do stuff with setOfReferencesToX
}
** Como nota aparte, estoy cansado de calificar que la pregunta/respuesta es específica del último estándar. ¿Podría la comunidad C++ en su conjunto, por favor empezar a calificar cosas que son específicas del antiguo estándar en su lugar? El estándar más nuevo ha estado fuera por alrededor de un año.
+1 para la nota final. – Griwes
"¿Podría la comunidad C++ en su conjunto, por favor, comenzar a calificar cosas que son específicas del antiguo estándar en su lugar?" No. Dado el gran número de usuarios que no pueden actualizarse a un compilador con compatibilidad más completa con C++ 11, y mucho menos con la popularidad de una cierta familia de compiladores que solo está actualizando lentamente su compatibilidad con C++ 11, C++ está funcionando para significar C++ 03 por lo menos otro año si no dos. Y no olvidemos que ni GCC ni Clang afirman una conformidad total con C++ 11. El futuro no es el presente, y pretender que es así no lo hará. –