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

3 la respuesta

Escribir directamente en el buffer char * de std :: string

Entonces tengo unstd::string y tiene una función que tomachar* y escribe en ello. Ya questd::string::c_str() ystd::string::data() regresoconst char*No puedo usarlos. Así que estaba asignando un búfer temporal, llamando a una función con él y ...

1 la respuesta

¿Cuál es el propósito de std :: launder?

P0137 [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0137r1.html] presenta la plantilla de funcionesstd::launder y realiza muchos, muchos cambios al estándar en las secciones relacionadas con sindicatos, vida útil e indicadores. ¿Cuál ...

4 la respuesta

¿Puede una función noexcept seguir llamando a una función que arroja C ++ 17?

EnP0012R1 [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0012r1.html] "Hacer que las especificaciones de excepción sean parte del sistema de tipos", veo quenoexcept ahora se está convirtiendo en parte del tipo de función. No puedo ...

1 la respuesta

¿Cómo afecta std :: launder a los contenedores?

Considere la siguiente implementación, simplificada e incompleta, de un vector de tamaño fijo: template<typename T> class Vec { T *start, *end; public: T& operator[](ssize_t idx) { return start[idx]; } void pop() { end--; end->~T(); ...

5 la respuesta

Restringir argumentos de plantilla variadic

¿Podemos restringir los argumentos de plantilla variadic a cierto tipo? Es decir, lograr algo como esto (no C ++ real, por supuesto): struct X {}; auto foo(X... args)Aquí mi intención es tener una función que acepte un número variable deX ...

2 la respuesta

¿Por qué las funciones de construcción y destrucción de std :: allocator están en desuso en c ++ 17?

La especificación c ++ 17 desprecia elconstruct ydestroy Los miembros de lastd::allocator objeto. El grupo de trabajo proporcionó justificación para despreciar otras funciones de los ...

2 la respuesta

Borrar tipo borrar, ¿alguna pregunta?

Entonces, supongamos que quiero escribir borrado usando el borrado de texto. Puedo crear pseudo-métodos para variantes que permiten un natural: pseudo_method print = [](auto&& self, auto&& os){ os << self; }; std::variant<A,B,C> var = // create ...

5 la respuesta

¿Cómo exactamente std :: string_view es más rápido que const std :: string &?

std::string_view [http://en.cppreference.com/w/cpp/string/basic_string_view]ha llegado a C ++ 17 y se recomienda ampliamente usarlo en lugar deconst std::string&. Una de las razones es el rendimiento. ¿Alguien puede explicar cómoexactamente ...

4 la respuesta

¿Cuál es el valor de __cplusplus para C ++ 17?

Estamos intentando probar algún código en C ++ 17 y sucambiar astd::uncaught_exception [https://stackoverflow.com/q/27741423/608639]. Parece que no puedo lograr que GCC proporcione el valor de__cplusplus: $ /opt/local/bin/g++ -std=c++17 -dM -E - ...

1 la respuesta

reinterpret_cast, char * y comportamiento indefinido

¿Cuáles son los casos dondereinterpret_casting achar* (ochar[N]) es un comportamiento indefinido, y ¿cuándo es un comportamiento definido? ¿Cuál es la regla general que debería usar para responder esta pregunta? Como aprendimos deesta pregunta ...