What does this ':' operator do in the following C++ code, and why?
<blockquote>
  <p><strong>Possible Duplicate:</strong><br>
  <a href="http://stackoverflow.com/questions/2950029/what-does-unsigned-temp3-means">What does &#39;unsigned temp:3&#39; means</a><br>
  <a href="http://stackoverflow.com/questions/4706584/what-does-this-mean-in-c-int-a16">what does this mean in c int a:16;?</a>  </p>
</blockquote>



<p>I came across this <code>struct</code> in some C++ code I'm working on.  Can someone explain to me what the colon operator is doing and why one would use it?</p>

<pre><code>struct MYMSG
{
    unsigned short  src : 4;
    unsigned short  dst : 11;
    unsigned short  tx    : 1;
};
</code></pre>
