#include <string> file not found in iOS in C++ file
c++, ios, xcode
Solution
Are you really sure `<string>` is included only from a .cpp file?
I just tested on a fresh project, by adding a .cpp file and including `<string>`, and it works, just as expected (same Xcode version, same SDK version).
But if I include `<string>` in a .m file, then of course I got a «file not found» compiler error.
So double-check this, as the error may come from here.
Do you include `<string>` from a .cpp file only, or from a .h file, intended to be used by a .cpp implementation? Then maybe it's also included by a .m file, hence the error.
Also check your precompiled headers, if any, to see if you include some C++ stuff there...
Also remember, in that later case, that you can rely on the `__cplusplus` macro, when needed.
Problem
I have a objective c/c++ project under iOS, moving it from OS/X and I get a 'file not found' error on ``` #include <string> ``` It's a clean project, and I've just added the files from the old project. Are the STL includes set up in XCode? A find produces a number of possibilities e.g. ``` /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/usr/include/c++/4.2.1/debug/ ``` but adding this to the search path just threw up more errors. Any suggestions? (apart from don't use string - it's in house code I'm porting) xcode 4.2.1, ios5.0 running on OS/X 10.7.3 and it's in a .cpp file, the code works fine on OS/X