std::semiregular
De cppreference.com
<tbody>
</tbody>
| Definido en el archivo de encabezado <concepts>
|
||
template <class T> concept semiregular = std::copyable<T> && std::default_initializable<T>; |
(desde C++20) | |
El concepto semiregular especifica que un tipo es tanto copiable como construible por defecto. Se satisface por tipos que se comportan de manera similar a los tipos integrados como int, excepto que no necesitan soportar comparación con ==.
Ejemplo
Ejecuta este código
#include <concepts>
#include <iostream>
template<std::semiregular T>
struct Sencillo {
T valor;
};
int main()
{
Sencillo<int> miEntero1{4};
Sencillo<int> miEntero2;
miEntero2 = miEntero1;
std::cout << miEntero1.valor << ' ' << miEntero2.valor << '\n';
}
Salida:
4 4
Véase también
(C++20) |
Especifica que un tipo es regular. Es decir, es tanto semiregular como comparable en igualdad (equality_comparable). (concepto) |