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

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

Guía de deducción variable no tomada por g ++, tomada por clang ++: ¿quién está en lo correcto?

Considere el siguiente código: template <typename... Types> struct list { template <typename... Args> list(Args...) { static_assert(sizeof...(Types) > 0); } }; template <typename... Args> list(Args...) -> list<Args...>; int main() { list l{0, ...

5 la respuesta

¿Se permite eliminar para modificar su parámetro?

En una respuestahttps://stackoverflow.com/a/704568/8157187 [https://stackoverflow.com/a/704568/8157187], hay una cita de Stroustrup: C ++ permite explícitamente una implementación de eliminar para poner a cero un operando lvalue, y esperaba que ...

2 la respuesta

¿Existe un operador de navegación seguro para C ++?

En Modern C ++, ¿hay alguna manera de hacer una navegación segura? Por ejemplo,en lugar de hacer... if (p && p->q && p->q->r) p->q->r->DoSomething();... tener una sintaxis sucinta mediante el uso de algún tipo de puntero inteligente de ...

1 la respuesta

¿Cuál es la diferencia entre las variables estáticas constexpr y estáticas en línea en C ++ 17?

Con C ++ 17 obtenemos variables en línea. Uno de uso para ellos es definir campos constantes en las clases. Entonces, ¿cuál es la diferencia entre estas dos definiciones constantes: class MyClass { static constexpr int myFirstVar = 10; static ...

2 la respuesta

La deducción de argumento de plantilla de clase falló con la clase derivada

#include <utility> template<class T1, class T2> struct mypair : std::pair<T1, T2> { using std::pair<T1, T2>::pair; }; int main() { (void)std::pair(2, 3); // It works (void)mypair(2, 3); // It doesn't work }¿Está bien hecho lo anterior? ¿Es ...

1 la respuesta

¿Por qué se requiere <> cuando se especifica una clase de plantilla que tiene valores predeterminados para todos sus parámetros de plantilla?

¿Hay una buena razón por la cual<> es obligatorio al especificar una clase de plantilla que tiene valores predeterminados para todos sus parámetros de plantilla? p.ej. #include <iostream> template<typename T = int> class C { public: T obj = 0; ...

1 la respuesta

¿Cómo ordenar tipos en tiempo de compilación?

Considere el siguiente programa: #include <tuple> #include <vector> #include <iostream> #include <type_traits> template <class T> struct ordered {}; template <class... T> struct ordered<std::tuple<T...>> { using type = /* a reordered tuple */; ...

3 la respuesta

¿Por qué S :: x no se usa odr?

Considere este ejemplo decppreference [http://en.cppreference.com/w/cpp/language/definition]: struct S { static const int x = 1; }; void f() { &S::x; } // discarded-value expression does not odr-use S::xEstoy de acuerdo que&S::x es unexpresión ...

1 la respuesta

¿Cómo funciona std :: visit con std :: variant?

Estoy mirandostd:variant/std::visit doc aquí: http://en.cppreference.com/w/cpp/utility/variant/visit [http://en.cppreference.com/w/cpp/utility/variant/visit]y también busqué mucho en Google tratando de entender la magia detrásstd::visit ...