什么(0 << 12)在Swift中意味着什么?

前端之家收集整理的这篇文章主要介绍了什么(0 << 12)在Swift中意味着什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在文档中,我发现枚举案例定义为:
kCGBitmapByteOrderDefault = (0 << 12)

据我所知,这意味着位移零12次……仍为零.我错过了什么?

每个 Apple Doc for CGBitmapInfo:

The byte order constants specify the byte ordering of pixel formats.

…If the code is not written correctly,it’s possible to misread the data which leads to colors or alpha that appear wrong.

kCGBitmapByteOrder的各种常量主要映射到CGImageByteOrder中类似命名的常量,它没有“默认值”.

这些值详见in the docs for CGImageByteOrderInfo

您询问的是默认值,正如您所注意到的那样,位移0仍为0,但正如Rob所说,前面/后面的位仍然很重要.

您缺少的是其他选项:

kCGBitmapByteOrder16Little =(1 << 12)
16位小端格式.

kCGBitmapByteOrder32Little =(2<< 12)
32位小端格式.

kCGBitmapByteOrder16Big =(3<< 12)
16位,大端格式.

kCGBitmapByteOrder32Big =(4<< 12)
32位,大端格式.

它们使用不同的值,具体取决于16位与32位图像,以及您是否首先关注最小或最重要的数字.

“默认”(0<<<<<<<<<<<<<<<<<<< 12&gt使用这些其他选项对它们的解释方式与使用“默认”的方式有不同的影响

原文链接:https://www.f2er.com/swift/318658.html

猜你在找的Swift相关文章