Я пытаюсь заменить часть строки, используя данные, указанные здесь , следующим кодом:
#include <iostream>
#include <string>
using namespace std ;
int main(){
string ori = "this is a test"; // to replace "is a" with "IS A"
string part = "is a";
int posn = ori.find(part);
int len = part.size();
cout << posn << endl;
ori.replace(posn, len, ori, "IS A");
cout << ori;
}
Однако выдается длинная ошибка, начинающаяся с:
rnreplacestr.cpp:11:36: error: no matching function for call to ‘std::__cxx11::basic_string<char>::replace(int&, int&, std::__cxx11::string&, const char [5])’
ori.replace(posn, len, ori, "IS A");
^
In file included from /usr/include/c++/6/string:52:0,
from /usr/include/c++/6/bits/locale_classes.h:40,
from /usr/include/c++/6/bits/ios_base.h:41,
from /usr/include/c++/6/ios:42,
from /usr/include/c++/6/ostream:38,
from /usr/include/c++/6/iostream:39,
from rnreplacestr.cpp:1:
Где проблема и как ее можно решить?Спасибо за вашу помощь.