擅长:python、mysql、java
<p>它使用位移位将版本号存储在一个<code>int</code>中。它将“主要”版本存储在上16位,“次要”版本存储在下16位的前8位,“修订”号存储在最低8位。你知道吗</p>
<p>如果输入太大(例如,如果a超出了无符号短字符的有效范围,或者如果b或c超出了无符号字符的范围),它将无法正常工作。由于它没有类型安全性,更好的方法是生成一个内联函数,该函数对适当的类型执行相同的操作:</p>
<pre><code>inline unsigned long MakeVersion(unsigned short major, unsigned char minor, unsigned char revision)
{
unsigned long l = (static_cast<unsigned long>(major) << 16) | (static_cast<unsigned long>(minor) << 8) | (static_cast<unsigned long>(revision);
return l;
}
</code></pre>
<p>由于Python是一种C派生语言,您应该能够使用相同的位移位来完成相同的任务。你知道吗</p>