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

1 la respuesta

¿Es legal verificar si la dirección de un subobjeto se encuentra dentro de los límites de un objeto que contiene

2 preguntas: ¿El siguiente código está bien formado con un comportamiento definido? ¿Hay alguna implementación posible de c ++ en la que se pueda afirmar? Código (c ++ 11 y superior): #include <cassert> #include <utility> #include <ciso646> ...

1 la respuesta

¿Usa std :: launder para obtener un puntero a un miembro de objeto activo desde un puntero a un objeto inactivo?

Esta pregunta sigue a estauno [https://stackoverflow.com/questions/48188737/is-pointer-arithmetic-on-inactive-member-of-a-union-ub] Consideremos este código de ejemplo: struct sso { union{ struct { char* ptr; char size_r[8]; } large_str; ...

3 la respuesta

Interconvertibilidad de puntero frente a tener la misma dirección

losborrador de trabajo de la norma N4659 [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4659.pdf]dice: [basic.compound] Si dos objetos son interconvertibles por puntero, entonces tienen la misma dirección y luego nota que Un objeto ...

1 la respuesta

¿Es posible usar enlaces estructurados para asignar miembros de la clase?

Me gustaría usar enlaces estructurados de C ++ 17 para asignar un valor a una variable de miembro de clase, como este: #include <cmath> #include <iostream> struct Result { double value; bool error; }; Result square_root(double input) { return ...

1 la respuesta

Las variables marcadas como const usando enlaces estructurados no son const

He estado escribiendo un conjunto de clases para permitir una simple Pythonzip-función. El siguiente fragmento funciona (casi) exactamente como se esperaba. Sin embargo, las dos variablesa yb no sonconst. std::vector<double> v1{0.0, 1.1, 2.2, ...

1 la respuesta

Comprender la unión estructurada en C ++ 17 por analogía

Estoy tratando de entender el enlace estructurado introducido en C ++ 17. La explicación sobrecppreference [http://en.cppreference.com/w/cpp/language/structured_binding]no es obvio para mí, pero parece cv-auto ref-operator [x, y, z] = ...es más ...

2 la respuesta

¿Cuándo debo usar [[maybe_unused]]?

Lo bueno de usar[[maybe_unused]]? Considerar int winmain(int instance, int /*prevInstance*/, const char */*cmdline*/, int show); int winmain(int instance, [[maybe_unused]] int prevInstance, [[maybe_unused]] const char *cmdline, int show);Algunos ...

2 la respuesta

Enlace estructurado y corbata ()

Dadas estas declaraciones: int a[3] {10,20,30}; std::tuple<int,int,int> b {11,22,33};Puedo usar declaraciones de enlace estructurado para decodificara yb: auto [x1,y1,z1] = a; auto [x2,y2,z2] = b;Pero six1, y1, etc. ya existen, ...

2 la respuesta

¿Cómo construyo gcc con soporte para conceptos C ++ ("conceptos lite")?

El comité de estándares de C ++ está trabajando en un TS (Especificación técnica) para la extensión de Conceptos: "Lenguajes de programación - Extensiones de C ++ para ...

2 la respuesta

Comprender las plantillas de alias

Pregunté unpregunta [https://stackoverflow.com/q/30189926/2642059]que tiene varias referencias al código: template <typename...> using void_t = void;Creo que generalmente tengo un malentendidoplantillas de ...