title: C# bitwise equal bool operator
body: <p>Boolean in C# are 1 byte variables.
  And because bool are shortcuts for the Boolean class, I would expect that the <strong>&amp;=</strong>, <strong>|=</strong> operations have been overridden to let them work with the boolean types but I'm not so sure about it. There is nothing like <strong>&amp;&amp;=</strong> or <strong>||=</strong> to be used.</p>
  
  <p>Here's my question, doing something like:</p>
  
  <pre><code>bool result = condition;
  result &amp;= condition1;
  result &amp;= condition2;
  </code></pre>
  
  <p>will work but is it just because the bool will be <em>00000000</em> for <em>false</em> and <em>00000001</em> for <em>true</em> or because underneath the bool class will use something like <strong>&amp;&amp;=</strong> and <strong>||=</strong> when the previous are called?
  Is it actually safe to use the previous notations or is better to use</p>
  
  <pre><code>bool result = condition;
  result = result &amp;&amp; condition1;
  result = result &amp;&amp; condition2;
  </code></pre>
  
  <p>to avoid any strange behavior?</p>
  
  <p>Please note that conditions could be something like <em>A >= B</em> or any other possible check that will return a bool.</p>