Sistema () sin conversión adecuada C ++
Tengo 2 listas con nombres de archivos.
std::list<std::string> userfontlist;
std::list<std::string>::iterator it;
std::list<std::string> CAATfontlist;
std::list<std::string>::iterator it2;
std::list<std::string> doesnthavelist;
y quiero comparar las 2 listas y eliminar el valor que coincide. todo parece estar bien hasta que agregue "del / F / Q / A" a y.c_string ().
for (it = userfontlist.begin(); it !=userfontlist.end(); ++it){
for(it2 = CAATfontlist.begin();it2 !=CAATfontlist.end();++it2){
if(*it==*it2){
string y = *it;
string k = y.c_str();
string a = "del /F /Q /A " + k;
system(a);
}
}
}
el sistema (a) dice que "no existe una función de conversión adecuada de cadena estándar a const char *". Si pongo todo como 1 cadena, funciona, pero no cuando concateno la cadena y el y.c_str (). No he tenido suerte tratando de convertir el std :: string a const * char, ni siquiera estoy seguro de si eso ayuda.