FreeBSD Manual Pages
std::regular(3) C++ Standard Libary std::regular(3) NAME std::regular - std::regular Synopsis Defined in header <concepts> template <class T> (since C++20) concept regular = std::semiregular<T> && std::equality_compara- ble<T>; The regular concept specifies that a type is regular, that is, it is copyable, default constructible, and equality comparable. It is satisfied by types that behave similarly to built-in types like int, and that are comparable with ==. Example // Run this code #include <concepts> #include <iostream> template<std::regular T> struct Single { T value; friend bool operator==(const Single&, const Single&) = default; }; int main() { Single<int> myInt1{4}; Single<int> myInt2; myInt2 = myInt1; if (myInt1 == myInt2) std::cout << "Equal\n"; std::cout << myInt1.value << ' ' << myInt2.value << '\n'; } Output: Equal 4 4 See also semiregular specifies that an object of a type can be copied, moved, swapped, and (C++20) default constructed (concept) http://cppreference.com 2022.07.31 std::regular(3)
NAME | Synopsis | Example | Output: | See also
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::regular&sektion=3&manpath=FreeBSD+Ports+15.0>
