金海佳学C++primer 练习9.28

来源:互联网 发布:显卡升级软件 编辑:程序博客网 时间:2024/06/07 12:16

forward_list中查找str1并将str2插到后面

Practice 9.28

#include <iostream>#include <string>#include <vector>#include <algorithm>#include <list>#include <iterator>#include <cmath>#include <cstring>#include <forward_list>using namespace std;void print(forward_list<string> flst) {    for(auto i : flst) {        cout << i << " ";    }    cout << endl;}// str1 perhaps is equal to str2void find_str1_insert_str2(forward_list<string> flst, string str1, string str2) {    auto cur = flst.begin();    while(1) {        if(cur == flst.end()) {            cout << "Find nothing!" << endl;            return;        }        if(*cur == str1) {            cur = flst.insert_after(cur, str2);            break;        }        cur++;    }    cout << "Done!" << endl;    print(flst);    return;}int main() {    forward_list<string> flst = {"jin", "hai", "jia"};    /* test 1 */    cout << "test1: find hai insert ding" << endl;    find_str1_insert_str2(flst, "hai", "ding");    /* test 2 */    cout << "test2: find hai insert hai" << endl;    find_str1_insert_str2(flst, "hai", "hai");    /* test 3 */    cout << "test3: find wang insert meng" << endl;    find_str1_insert_str2(flst, "wang", "meng");    /* test 4 */    cout << "test4: find jia insert ding" << endl;     find_str1_insert_str2(flst, "jia", "ding");    return 0;}

Output

test1: find hai insert dingDone!jin hai ding jia test2: find hai insert haiDone!jin hai hai jia test3: find wang insert mengFind nothing!test4: find jia insert dingDone!jin hai jia ding 

Circumstances? I make circumstances!

原创粉丝点击