I have:
string filename:
ifstream file(filename);
The compilers complains about no match between ifstream file and a string. Do I need to
in c++-11 it can also be an std::string. So (installing c++-11 and) changing the dialect of you project to c++-11 could also fix the problem.
The ifstream constructor expects a const char*, so you need to do ifstream file(filename.c_str()); to make it work.
Change
ifstream file(filename);
to
ifstream file(filename.c_str());
Because the constructor for an ifstream takes a const char*, not a string pre-C++11.