Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iterator>
- namespace details {
- template<typename Container>
- struct reversed_container {
- Container& container;
- constexpr decltype(auto) begin() const {
- using std::end;
- return std::make_reverse_iterator(end(container));
- }
- constexpr decltype(auto) end() const {
- using std::begin;
- return std::make_reverse_iterator(begin(container));
- }
- };
- }
- template<typename Container>
- constexpr details::reversed_container<Container> as_reversed(Container& container) {
- return {container};
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement