A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://en.cppreference.com/w/cpp/language/../algorithm/../ranges/../ranges/basic_istream_view.html below:

std::ranges::views::istream, std::ranges::basic_istream_view, std::ranges::istream_view, std::ranges::wistream_view - cppreference.com

std::ranges::basic_istream_view (1) (since C++20)

Helper templates

template< class Val >
using istream_view = ranges::basic_istream_view<Val, char>;

(2) (since C++20)

template< class Val >
using wistream_view = ranges::basic_istream_view<Val, wchar_t>;

(3) (since C++20)

Customization point objects

namespace views {

    template< class T >
    constexpr /* unspecified */ istream = /* unspecified */;

}
(4) (since C++20)

Helper concepts

template< class Val, class CharT, class Traits >

concept /*stream-extractable*/ =
    requires(std::basic_istream<CharT, Traits>& is, Val& t) {
        is >> t;

    };
(5) (exposition only*)

1) A range factory that generates a sequence of elements by repeatedly calling operator>>.

2,3) Convenience alias templates for character types char and wchar_t.

The program is ill-formed if

U

is not both publicly and unambiguously derived from

std::basic_istream<typename U::char_type, typename U::traits_type>

, which may result in a

substitution failure

.

5)

The exposition-only concept

/*stream-extractable*/<Val, CharT, Traits>

is satisfied when lvalue of type

Val

can be extracted from lvalue of type

std::basic_istream<CharT, Traits>

.

The iterator type of basic_istream_view is move-only: it does not meet the LegacyIterator requirements, and thus does not work with pre-C++20 algorithms.

Customization point objects

The name views::istream<T> denotes a customization point object, which is a const function object of a literal semiregular class type. See CustomizationPointObject for details.

[edit] Data members Member Definition std::basic_istream<CharT, Traits>* stream_ a pointer to the input stream
(exposition-only member object*) Val value_ the stored value
(exposition-only member object*) [edit] Member functions constructs a basic_istream_view
(public member function) returns an iterator
(public member function) returns std::default_sentinel
(public member function) Inherited from std::ranges::view_interface returns a constant iterator to the beginning of the range
(public member function of std::ranges::view_interface<D>) [edit] returns a sentinel for the constant iterator of the range
(public member function of std::ranges::view_interface<D>) [edit] std::ranges::basic_istream_view::basic_istream_view (since C++20)

Initializes stream_ with std::addressof(stream), and value-initializes value_ .

std::ranges::basic_istream_view::begin

constexpr auto begin();

(since C++20)

Equivalent to *stream_ >> value_ ; return iterator {*this};.

[edit] Nested classes the iterator type of basic_istream_view
(exposition-only member class*) [edit] Example

Output:

/today/ /is/ /yesterday’s/ /tomorrow/
1.1, 2.2, 3.3, 4.4, 55, 66, 7.7, 8.8,
[edit] Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior LWG 3568 C++20 P2325R3 accidentally made the stored value default-initialized restored to value-initialization P2325R3 C++20 default constructor was provided as
view must be default_initializable removed along with
the requirement P2432R1 C++20 ranges::istream_view was a function template
and did not follow the naming convention made an alias template;
customization point objects added [edit] See also

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4