Resultados de la búsqueda a petición "c++14"

1 la respuesta

Constructor y constructor de copia para la clase que contiene la unión con miembros no triviales

Estoy tratando de implementar un tipo de variante personalizada que utiliza una unión para almacenar datos de varios tipos diferentes. En el campotype_id Planeo almacenar de qué tipo son los datos almacenados en la unión. El sindicato contiene ...

1 la respuesta

¿Por qué no puedo mover std :: unique_ptr dentro de lambda en C ++ 14?

Quiero pasar un puntero sin procesar dentro de lambda, pero no quiero que se filtre, si no se invoca el lambda. Se parece a esto: void Clean(std::unique_ptr<int>&& list); void f(int* list) { thread_pool.Push([list = std::unique_ptr<int>(list) ] ...

4 la respuesta

'auto' no permitido en prototipo de función con Clang

Usando Clang 3.5, 3.6 o 3.7, con la banderastd=c++1y el siguiente código no compila: #include <iostream> auto foo(auto bar) { return bar; } int main() { std::cout << foo(5.0f) << std::endl; }El error dado es: error: 'auto' no permitido en ...

2 la respuesta

Inicializador de expresión constante para miembro de clase estática de tipo double

En C ++ 11 y C ++ 14, ¿por qué necesitoconstexpr en el siguiente fragmento: class Foo { static constexpr double X = 0.75; };mientras que este produce un error de compilación: class Foo { static const double X = 0.75; };y (más sorprendentemente) ...

1 la respuesta

por qué declarar constructores constrexpr para clases con destructores no triviales (por ejemplo, unique_ptr, std :: variant)

Por lo que yo entiendo (al menos parac++14), un destructor no puede serconstexpr si no es trivial (generado implícitamente o=default) ¿Cuál es el punto de declararconstexpr constructores para estructuras con destructores no triviales? struct X { ...

8 la respuesta

¿Hay alguna manera de iterar en la mayoría de los N elementos usando el bucle for basado en rango?

Me gustaría saber si hay una buena manera de iterar como máximo N elementos en un contenedor utilizando el rango basado en bucles y / o algoritmos de la biblioteca estándar (ese es el punto, sé que puedo usar el "viejo" "para un bucle con una ...

3 la respuesta

¿El estándar requiere que std :: tuple_size sea compatible con SFINAE?

Editar anexar: el título de la pregunta era "¿el compilador de Visual Studio o Clang tienen un comportamiento incorrecto?", Pero se han cambiado. Entonces agrego aquí que clang y gcc lo compilan de la manera que pretendía, pero VS no. Tengo el ...

1 la respuesta

C ++ Convierte un paquete de parámetros de tipos en paquetes de parámetros de índices

¿Hay alguna forma de convertir un paquete de tipos de parámetros en un paquete de enteros de parámetros de0 asizeof...(Types)? Más específicamente, estoy tratando de hacer algo esto: template <size_t... I> void bar(); template <typename... ...

2 la respuesta

Habilitar el indicador `-std = c ++ 14` en Code :: Blocks

He instalado Code :: Blocks para Windows y quiero compilar código C ++ 14 como lambdas genéricos pero la versión binaria de Code :: Blocks que he instalado desdecodeblocks.org [http://www.codeblocks.org/downloads/26]no es compatible con la ...

1 la respuesta

Una declaración de uso no puede repetirse en el alcance de la función. ¿Porqué es eso?

En [namespace.udecl] / 10 tiene el siguiente ejemplo: namespace A { int i; } namespace A1 { using A::i; using A::i; // OK: double declaration } void f() { using A::i; using A::i; // error: double declaration } Este fragmento se compila en clang.