title: Why can two different enum enumeration-constants have the same integer value?
body: <p>I know that if I defined an enum weekday like this:</p>
  
  <pre><code>enum weekday {
      MON,
      TUE,
      WED,
      THU,
      FRI,
  };
  </code></pre>
  
  <p>Then, MON would internally equal to 0, by default, and TUE to 1, WED to 2...</p>
  
  <p>But if I define it this way:</p>
  
  <pre><code>enum weekday {
      MON,
      TUE = 0,
      WED,
      THU,
      FRI,
  };
  </code></pre>
  
  <p>Then both <code>MON</code> and <code>TUE</code> would get the value of 0.</p>
  
  <p>How would a system differentiate MON and TUE internally? I mean, if I declare something like this:</p>
  
  <pre><code>enum weekday today = 0;
  </code></pre>
  
  <p>Then is today <code>MON</code> or <code>TUE</code>? Or, philosophically speaking, both?</p>