int compare (size_t pos, size_t len, const string& str,
size_t subpos, size_t sublen) const;
在这个函数中,为什么需要子串sublen的长度?当我们想比较两个字符串时,这个长度应该等于len。
答案 0 :(得分:2)
也许只有相同长度的字符串可以相等,但不仅可以比较相同长度的字符串。
并且记住compare
也可以使用返回值的符号返回字符串是“大于”还是“小于”另一个字符串,如果它们不相等的话。
答案 1 :(得分:1)
如果要比较2个不同字符串的2个子字符串,可能需要这样做。
这里解释得非常好:std::compare function - C++
概念是,您可能有2个字符串,并且只想比较它们的一部分。像一个字符串的第2到第5个字符到另一个字符串的第3到第6个字符。此功能不涉及终点。因此,对于每个字符串,您的输入将分别仅为2和3。现在为了计算你需要给出多长度的比较。
基本上用于指定要比较的2个字符串的子字符串。