C ++でのビットマップ処理について読んでいるときに、ビットマップファイルから取得したデータを使用してカラーパレットをロードするために使用されるコードのブロックに出くわしました。
//set Number of Colors
numColors = 1 << bmih.biBitCount;
//load the palette for 8 bits per pixel
if(bmih.biBitCount == 8) {
colours=new RGBQUAD[numColours];
fread(colours,sizeof(RGBQUAD),numColours,in);
}
ここで、「bmih.biBitCount」は、すでに値を持っている事前定義された変数です。作成者がnumColorsを1に等しいと宣言してから、同じ行のその変数に値bmih.biBitCountを割り当てるのはなぜですか?これは正確に何をするのでしょうか。また、このように2回インラインで変数に値を割り当てることの利点は何ですか。