Preguntas etiquetadas con c++20

C ++ 20 es el objetivo de la versión de C ++ después de C ++ 17. Esta etiqueta debe usarse (junto con la etiqueta de C ++) para preguntas sobre las características de C ++ en camino para C ++ 20.


1
Creación de objeto implícito no especificado
Como P0593 se ha aceptado la creación implícita de objetos para la manipulación de objetos de bajo nivel , los objetos ahora se pueden crear implícitamente en C ++ 20. Específicamente, la redacción introducida por la propuesta permite que ciertas operaciones (como std::malloc) creen y comiencen automáticamente la vida útil …

1
¿Cómo se pretende implementar shift_right () en C ++ 20?
En C ++ 20, el <algorithm>encabezado gana dos nuevos algoritmos: shift_left()yshift_right() . Ambos aceptan cualquier LegacyForwardIterator. Para shift_left(), se especifica que "los movimientos se realizan en orden creciente a ipartir de ​0"; para shift_right(), se especifica que "si ForwardItcumple con los requisitos de LegacyBidirectionalIterator, los movimientos se realizan en orden …




2
¿Cómo implementar la forma generalizada de std :: same_as (es decir, para más de dos parámetros de tipo) que es independiente del orden de los parámetros?
Antecedentes Sabemos que el concepto std::same_ases agnóstico al orden (en otras palabras, simétrico): std::same_as<T, U>es equivalente a std::same_as<U, T>( pregunta relacionada ). En esta pregunta, me gustaría implementar algo más general: template <typename ... Types> concept same_are = ...que verifique si los tipos en el paquete Typesson iguales entre sí. …

2
¿Cómo se implementa std :: atomic_ref para los tipos no atómicos?
Me pregunto cómo se std::atomic_refpuede implementar de manera eficiente (uno std::mutexpor objeto) para objetos no atómicos, ya que la siguiente propiedad parece bastante difícil de aplicar: Las operaciones atómicas aplicadas a un objeto a través de atomic_ref son atómicas con respecto a las operaciones atómicas aplicadas a través de cualquier …
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.