Потребовалось символ юникод строки проверить на предмет вхождения в суррогатную пару (а конкретно, является ли символ младшим суррогатом). Все бы ничего, но индекс символа вычисляемый и вычислять его для каждого сравнения (коих собственно два) не кошерно. Есть варианты решения:
1. Сохранить индекс в переменной. Просто, но нужна переменная.
2. Сделать функцию и заинлайнить ее. Нужна функция.
3. Извернуться.
Собственно, я о третьем варианте:
With WordRec(AContent[ACharIndex + CharCount]) Do
If (Word(Bytes) >= $DC00) And (Word(Bytes) <= $DFFF) Then;
Комментариев нет:
Отправить комментарий