Increment and Decrement Operators Should not be Applied to Bool Variables

According to the C++ Standard, you are still allowed to apply operator ++ to a variable of type bool for backward compatibility with old code. However, this practice is deprecated and most likely will not be supported in the future. Therefore, you should not use it in new code. Incrementing a bool always yields a ‘true’ value, regardless of the original value:

 	bool isConnected = true;	bool isTransmitting = false;	SOCKET socket = browser.Connect(); 	if (socket) 	{  isConnected++;   // value remains 'true'  isTransmitting++;   // 'true' value assigned}

Keep in mind that applying — (decrement operator) to a bool is illegal.

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

Overview

Recent Articles: