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

1 la respuesta

Referencias indirectas de reenvío

Es bien sabido que las referencias de reenvío "directo" funcionan de una manera fácil: template<typename T> void f(T &&t); // Here we are.Ahora, cómo usar referencias de reenvío de forma indirecta: template<typename T> void ...

1 la respuesta

Inicialización cero de C ++

Tengo problemas para comprender cuándo y por qué exactamente un miembro de mi clase se inicializa a cero ...

1 la respuesta

Constructor predeterminado explícito

Este código se compila bien con GCC 5.X, MSVC, pero GCC 6.X da error: "la conversión a 'a' de la lista de inicializadores usaría el constructor explícito 'a :: a ()'"clang"el constructor elegido es explícito en la inicialización de ...

2 la respuesta

¿Por qué la función declarada dentro de otra función no participa en la búsqueda dependiente del argumento?

Considere un ejemplo simple: template <class T> struct tag { }; int main() { auto foo = [](auto x) -> decltype(bar(x)) { return {}; }; tag<int> bar(tag<int>); bar(tag<int>{}); // <- compiles OK foo(tag<int>{}); // 'bar' was not declared in this ...

1 la respuesta

¿Cómo evitar la carrera de datos con `asio :: ip :: tcp :: iostream`?

Mi pregunta¿Cómo evito una carrera de datos cuando uso dos hilos para enviar y recibir a través de unasio::ip::tcp::iostream? DiseñoEstoy escribiendo un programa que usa unasio::ip::tcp::iostream para entrada y salida. El programa acepta ...

3 la respuesta

¿Un puntero con la dirección y el tipo correctos sigue siendo siempre un puntero válido desde C ++ 17?

(En referencia aesta pregunta y respuesta [https://stackoverflow.com/questions/48058545/are-there-any-guarantees-for-unions-that-contain-a-wrapped-type-and-the-type-its/48060029#48060029] .) Antes del estándar C ++ 17, la siguiente oración se ...

2 la respuesta

Lambda genérica y su argumento como expresión constante

GCC 7.2 y clang 5.0.0 aceptan el siguiente código, pero Microsoft VS 2017 15.5.0 Preview 5 y el compilador Intel C ++ 19 lo rechazan: struct S { }; constexpr int f(S) { return 0; } int main() { auto lambda = [](auto x) { constexpr int e = f(x); ...

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> ...

2 la respuesta

Aplicando una función a cada elemento de una tupla

Dado unstd::tuplesimilar a un objeto (es decir, con definidotuple_size yget semántica) y un objeto functor unarioftor, Quiero poder llamarftor en cada elemento de latuple-como objeto. Si ignoro el valor de retorno, soy consciente del truco de la ...

3 la respuesta

¿Es seguro vincular objetos C ++ 17, C ++ 14 y C ++ 11?

Supongamos que tengo tres objetos compilados, todos producidos pormismo compilador / versión: A fue compilado con el estándar C ++ 11B fue compilado con el estándar C ++ 14C fue compilado con el estándar C ++ 17Para simplificar, supongamos que ...