Seuraava koodi kuvaa tätä: # include # include using namespace std; int main () {string str0 = "Kyllä minä olen yksi. Kyllä minä tein sen."; int pos = str0.rfind ("Yes"); cout palata 0; } Tässä koodi, on kaksi "Kyllä" tärkein merkkijono. Se on viimeinen, joka on löydetty, joka alkaa indeksin 18 (laskien vasemmalta). Toinen väite voidaan käyttää kuten on esitetty seuraava koodi: # include # include using namespace std; int main () {string str0 = "Kyllä minä olen yksi. Kyllä minä tein sen."; int pos = str0.
rfind ("Kyllä", 15); cout palata 0; } Saatat olla hämmästynyt havaitessani, että tässä koodi on ensimmäinen Kyllä se löytyy. Rfind toiminto hakee osa-merkkijonon lopussa tärkeimmistä merkkijono. Toinen argumentti on mittaus alusta (vasemmalla) tärkeimmistä merkkijono. Toinen väite kertoo merkkijono esine aloittaa haun ulkopuolelle sen indeksi. Kuitenkin rfind toiminto, yli tarkoittaa edessä (vasemmalla) indeksin (15). Hakemisto sisällä Sub String löytyy Harkitse seuraava koodi: # include # include using namespace std; int main () {string str0 = "Kyllä minä olen yksi. Kyllä minä tein sen.
"; int pos = str0.find ("Kyllä", 15); cout palata 0; } Palautettu indeksin arvo on 18. Toinen väite löytää menetelmä on 15, joten haku alkoi 15. asemassa nolla perusteella laskennan tärkein merkkijono. Joten toinen "kyllä" oli sovitettu. Toinen "Kyllä" tärkein merkkijono sijaitsee indeksit, 18, 19 ja 20. Mitä jos toinen argumentti löytää menetelmä oli jokin näistä numeroista: 18, 19 tai 20? Tässä tilanteessa osa-merkkijono löytyisi vain tapauksessa 18. Joten haku on löydetty vain siinä tapauksessa toinen väite on löytää menetelmä on indeksi ensimmäisen merkin osa-merkkijono tärkein merkkijono .
Se oli löytää menetelmä. Sillä rfind menetelmä, jos numero toinen argumentti on vähemmän kuin 18 sitten toinen "Kyllä" (alkaen vasemmalta) ei löydy. Asia herkkyys Etsi Etsi ja rfind toimintoja, haku on isot ja pienet kirjaimet. Esimerkiksi "kyllä" ei voida p