🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
apstring类还提供了其他几个可以在字符串上调用的函数。find函数的意义看起来与[]操作符相反。不同于接收索引值然后提取索引值对应的字符,find函数接收一个字符然后找到字符相应的索引。 ~~~ apstring fruit = "banana"; int index = fruit.find(’a’); ~~~ 上面例子的功能是找出字符串中字母‘a’的索引。在这个例子中,字母‘a’出现了三次,所以find该如何处理并不是显而易见的。根据文档,它返回第一次出现处的索引,所以结果是1。如果字符串中不存在给定字母,find函数返回-1。 此外,find还有一个版本,它接收另一个apstring作为参数,找到参数表示的子串在原字符串中出现位置的索引。例如: ~~~ apstring fruit = "banana"; int index = fruit.find("nan"); ~~~ 这个例子的返回值为2。 读者应该还记得,在5.4节中我们提到过可以存在多个同名函数,只要它们的参数数目或类型不同。这个例子中,C++可以根据提供参数的类型确定调用find的哪个版本。