Overloading istream operator >> for bool

Question:
I am trying to overload the istream operator >> to work with type “bool”. From my point of view the code looks okay, except the VC++ 6.0 compiler tells me:

binary '>>' : no operator defined which takes a right-hand operand of type 'bool'

Here is my code snipet:

// overloaded operator declaration:istream &operator> > (istream &, bool &);// overloaded function:istream &operator>> (istream &input, bool &key) {   int test;   input >> test;   if (test != 0)      key = true;   else      key = false;   return input;}// code used in main:cout << "
Press 0 to exit this program or any key to continue.
:";cin >> testKey;

Answer:
C++ already defines an overloaded version of istream’s operator>> for type bool. You shouldn’t try to do it yourself. Note also that operator>> (as well as all the components of the Standard Library) are now declared in namespace std. You tried to overload it globally, and hence, the compiler didn’t complain about re-definitions.First, make sure to include rather than the deprecated . Also, use an appropriate using-declaration or using-directive to access the overloaded operator>>, as follows:

#include using namespace std; //using directiveint main{ //...}

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

The Latest

your company's audio

4 Areas of Your Company Where Your Audio Really Matters

Your company probably relies on audio more than you realize. Whether you’re creating a spoken text message to a colleague or giving a speech, you want your audio to shine. Otherwise, you could cause avoidable friction points and potentially hurt your brand reputation. For example, let’s say you create a

chrome os developer mode

How to Turn on Chrome OS Developer Mode

Google’s Chrome OS is a popular operating system that is widely used on Chromebooks and other devices. While it is designed to be simple and user-friendly, there are times when users may want to access additional features and functionality. One way to do this is by turning on Chrome OS

homes in the real estate industry

Exploring the Latest Tech Trends Impacting the Real Estate Industry

The real estate industry is changing thanks to the newest technological advancements. These new developments — from blockchain and AI to virtual reality and 3D printing — are poised to change how we buy and sell homes. Real estate brokers, buyers, sellers, wholesale real estate professionals, fix and flippers, and beyond may