这完全取决于您如何存储UTF-8字符以及比较器的外观.该sort函数完全不知道它排序的元素.
但你可能的意思是"...当存储在一个char数组中"然后答案是否定的,因为chars将存储给定UTF-8字符的单个字节,而不是逻辑字符.该sort函数对迭代器分隔的元素进行排序.sort仅当它们引用的迭代器/元素知道它们包含的数据时才起作用.char编码UTF-8 的s 数组不是这种情况.
这里的"正确"解决方案是将UTF-8输入解析为适当的(规范化的)Unicode代码点数组,对其进行排序,然后转换回UTF-8.