Looking at istream documentation, you will see that there is no implementation of function istream &operator>>( char& )
, but if you compile and ru
As stated here, operator>> is also implemented as non-member-function of cin.
Non-member function :
istream& operator>>( istream& st, char& ch );
There is always the standard stated it explicitly in the section § 27.7.2.2.3 :
27.7.2.2.3 basic_istream::operator>> [istream::extractors]
11/ Returns: in.
template<class charT, class traits> basic_istream<charT,traits>& operator>> (basic_istream<charT,traits>& in, charT& c); template<class traits> basic_istream<char,traits>& operator>> (basic_istream<char,traits>& in, unsigned char& c); template<class traits> basic_istream<char,traits>& operator>> (basic_istream<char,traits>& in, signed char& c);
operator>>
also is implemented as non-member functions.
istream& operator>> (istream& is, char& c)