string - Boot.Locale 的“线性/连续文本块”是什么意思?
问题描述
我阅读 Boost.Locale: Design Rationale并且有章节Why most parts of Boost.Locale work only on linear/contiguous chunks of text
,linear/contiguous chunks of text
在这种情况下意味着什么?
解决方案
这意味着要处理的文本必须放置在内存的连续区域中,没有间隙。它不能在多字节字符的中间或组合字符(例如字母和重音符号)之间的边界上分割。您可以在其他字符边界上拆分它,但您必须自己处理文本的每个部分,因为从 Boost.Locale 的角度来看,每个部分都将相互独立。
实际上,您可以使用std::string
orstd::vector
来存储文本,但不能使用std::deque
or std::list
。
推荐阅读
- python - 如何使用 Python 正则表达式匹配 PDF 文件中的多行
- r - 在R中更改shinyjs警报的标题
- javascript - 模拟服务工作者/节点不工作,我不明白为什么
- linux - 错误查找:路径必须在 Linux 命令的表达式之前
- python - 我如何在每个时期保存检查点并加载随机保存的检查点以继续训练
- python - 'NameError' 在另一个函数中调用一个函数
- spring - Camunda WebApp 无法在 SpringBoot 中启动
- swift - 无法将 int 类型的值转换为指定值 CGPoint
- python - Spotify API 在尝试获取播客信息时返回 404 未找到
- python - 在更高的基础上表达和操作