string replace(const string& str, const string& sub, const string repstr){
    string tmp;
    string::size_type len1 = sub.size();
    string::size_type pre = 0;
    string::size_type pos = 0;
    while ((pos = str.find(sub, pos)) != string::npos){ //寻找下一个sub串的起始位置
        tmp += str.substr(pre, pos - pre);//求字串
        tmp += repstr;
        pos += len1;
        pre = pos;
    }
    tmp += str.substr(pre, str.size() - pre);
    return tmp;
}
自己来贴个回答。面试官也说了可以用c++标准库。