返回介绍

F.6 比较方法和函数

发布于 2024-10-08 23:14:16 字数 1291 浏览 0 评论 0 收藏 0

string 类提供了用于比较 2 个字符串的方法和函数。下面是方法的原型:

这些方法使用 traits::compare( ) 方法,后者是为用于字符串的字符类型定义的。如果根据 traits::compare( ) 提供的顺序,第一个字符串位于第二个字符串之前,则第一个方法将返回一个小于 0 的值;如果这两个字符串相同,则它将返回 0;如果第一个字符串位于第二个字符串的后面,则它将返回一个大于 0 的值。如果较长的字符串的前半部分与较短的字符串相同,则较短的字符串将位于较长的字符串之前。

第二个方法与第一个方法相似,但它进行比较时,只使用第一个字符串中从位置 pos1 开始的 n1 个字符。

下面的示例将字符串 s1 的前 4 个字符同字符串 s2 进行比较:

第三个方法与第一个方法相似,但它使用第一个字符串中从 pos1 位置开始的 n1 个字符和第二个字符串中从 pos2 位置开始的 n2 个字符进行比较。例如,下面的语句将对 stout 中的 out 和 about 中的 out 进行比较:

第四个方法与第一个方法相似,但它将一个字符数组而不是 string 对象作为第二个字符串。

第五和六个方法与第三个方法相似,但将一个字符串数组而不是 string 对象作为第二个字符串。

非成员比较函数是重载的关系运算符:

每一个运算符都被重载,使之将 string 对象与 string 对象进行比较、将 string 对象与 C-风格字符串进行比较、将 C-风格字符串与 string 对象进行比较。它们都是根据 compare( ) 方法定义的,因此提供了一种在表示方面更为方便的比较方式。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文