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

1 la respuesta

¿Por qué está en desuso std :: iterator?

Clase de plantillastd::iterator [http://en.cppreference.com/w/cpp/iterator/iterator]está configurado para quedar en desuso en C ++ 17. ¿Porque? Ha sido una forma práctica de asegurarse std::iterator_traits ...

1 la respuesta

if constexpr (condición) como condicional en tiempo de compilación

Quiero usar un constexpr bool (useF en el ejemplo a continuación) para habilitar una función en el siguiente código. Aquí, llamandoA::f(). Además, quiero ser la plantilla alias (a) servoid en el caso apago la función. Intenté usar una ...

1 la respuesta

¿Tiene un puntero std :: byte las mismas implicaciones de alias que char *?

Las reglas estrictas de alias de C ++ (y C) incluyen que unchar* yunsigned char* puede alias cualquier otro puntero. AFAIK no hay una regla análoga parauint8_t*. Por lo tanto, mi pregunta: ¿Cuáles son las reglas de alias para ...

1 la respuesta

Cómo usar algo como `std :: basic_istream <std :: byte>`

Esta pregunta tiene como objetivo utilizarstd::byte con entrada-salida estándar. ¿Hay algún plan para agregar sobrecargas de función adecuadas pararead(_bytes) ywrite(_bytes), a las interfaces debasic_istream<CharT> ybasic_ostream<CharT> en un ...

1 la respuesta

Cómo incluir encabezados C ++ 17 con g ++ 6.2.0 con -std = c ++ 17 (opcional, cualquiera, string_view, variante)

std::optional está en C ++ 17, donde estabastd::experimental::optional antes de. Traté de compilar un archivo que incluía<optional>, con el comando: g++ -std=c++17 <filename>.cpp(en la terminal Bash). Obtuve el siguiente ...

1 la respuesta

Sobrecarga de estructuras con operador de llamada de plantilla y lambdas genéricos - gcc vs clang

He descubierto un fragmento de código que se compila y funciona correctamente en Clang ++ 4 (y tronco)pero falla al compilarg ++ 7 (y tronco). Supongamos que tengo lo siguientestruct tipos: struct a { void foo() { } }; struct b { void bar() { } ...

1 la respuesta

¿Qué cambios en C ++ hicieron que la inicialización de copia funcione para la clase con un constructor explícito?

Considera este código: struct X{ explicit X(){} explicit X(const X&){} }; void foo(X a = X()){} int main(){}Usando el estándar C ++ 14, tanto GCC 7.1 como clang 4.0rechaza [https,://godbolt.org/g/r8u5gO]El código, que es lo que esperaba. Sin ...

1 la respuesta

¿La metaprogramación con estado está mal formada (todavía)?

Uno de mis inventos más queridos / malvados que he tenido la fortuna de encontrar es elcontador constexpr [http://b.atch.se/posts/constexpr-counter/], también conocido como metaprogramación con estado. Como se menciona en la publicación, parece ...

1 la respuesta

Guía de deducción y plantillas variadas

Considere el siguiente código: #include <tuple> #include <iostream> template <class T> struct custom_wrapper { template <class Arg> custom_wrapper(Arg arg): data(arg) {} T data; }; template <class Arg> custom_wrapper(Arg arg) -> ...

1 la respuesta

¿Por qué es `std :: byte` una clase enum en lugar de una clase?

std::byte es una abstracción que se supone que proporciona un tipo de acceso seguro (r) a regiones de memoria en C ++, comenzando con el nuevo estándar 17. Sin embargo, se declara de esta manera de acuerdo ...