Resultados de la búsqueda a petición "c++14"
Uso de auto como retorno y tipo de parámetros en C ++ 14
En la cuarta edición del libro Bjarne Stroustrup (El lenguaje de programación C ++) leemos que: Usando auto, evitamos la redundancia y escribimos nombres largos. Esto es especialmente importante en la programación genérica, donde el tipo exacto ...
¿Ahora se permiten redefiniciones de miembros de datos estáticos constexpr? (pero no const en línea)?
Lo siguiente no se compila bajo gcc y clang en c ++ 14, pero tiene éxito con c ++ 1z: struct Cls { static constexpr int N = 0; }; constexpr int Cls::N; constexpr int Cls::N;El error de C ++ 14 es predecible:redefinition of ‘constexpr const ...
Evitar movimientos adicionales en make_unique / make_shared / emplace / etc para estructuras que usan inicialización agregada
std::make_unique() (y funciones similares) tienen un pocoproblema [http://coliru.stacked-crooked.com/a/7d4063069bcca194]: #include <cstdio> #include <memory> using namespace std; struct S { S() { printf("ctor\n"); } ~S() { printf("dtor\n"); } ...
Resolución de sobrecarga entre miembros de plantilla en clases base y derivadas
El compilador de Microsoft (Visual Studio 2017 15.2) rechaza el siguiente código: #include <type_traits> struct B { template<int n, std::enable_if_t<n == 0, int> = 0> void f() { } }; struct D : B { using B::f; template<int n, std::enable_if_t<n ...
¿Plantillas variables y declaración de cambio?
Tengo la siguiente función que puede tomar N argumentos de diferentes tipos y reenviarlos a N funciones con plantilla en cada tipo individual, de esta manera (ejemplo con dos argumentos): template <typename T1, typename T2> bool func(int& ...
Constante integral pasada por valor, tratada como constexpr?
Aunque he usado código como este antes, y está claro que el compilador tiene suficiente información para funcionar, realmente no entiendo por qué esto compila: template <class T, class I> auto foo(const T& t, I i) { return std::get<i>(t); } int ...
¿Es inicialización directa o inicialización de copia?
La inicialización de objetos (instancias de clases o estructuras) en C ++ se puede hacer de varias maneras. Algunas sintaxis evocan uninicialización directa de su objeto, otras sintaxis conducen a unacopia-inicialización. Concopia-elisión ...
¿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 ...
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 ...
¿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> ...