我正在编写一个将UTF8字符转换为其代表 Unicode 代码点的类方法。我的原型候选人如下:
static uint32_t Utf8ToWStr( uint8_t Byte1, uint8_t Byte2 = 0x00,
uint8_t Byte3 = 0x00, uint8_t Byte4 = 0x00,
uint8_t Byte5 = 0x00, uint8_t Byte6 = 0x00);
static uint32_t Utf8ToWStr(const std::vector<uint8_t> & Bytes);
在我的应用程序中;
Byte1
将是大约 90% 的时间中唯一的非零字节。
Byte1
并且Byte2
将是大约 9% 的时间中唯一的非零字节。
Byte1
,Byte2
并且Byte3
将是唯一少于 1% 的时间的非零字节。
Byte4
,Byte5
并且Byte6
几乎总是为零。
为了速度,我应该更喜欢哪个原型?