I don't think that the library linkage would effect the compiler's ability to recognize namespace std...
It sounds to me that you're not #including the right files:
#include <fstream>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <ostream>
#include <sstream>
#include <streambuf>
#include <strstream>
A combination of one or more of the files should suffice; for example:
#include <fstream>
would allow you to open/create a file where you can read/write from/to using the << and >> operators;
#include <windows.h>
#include <fstream>
int CALLBACK WinMain( HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow )
{
std::fstream outfile;
outfile.open("tmp.txt", std::ios_base::in |
std::ios_base::out |
std::ios_base::trunc);
char tmp[15] = "Hello World!";
outfile << tmp;
outfile.close();
return 0;
}
In short, check which files you're #including; make sure that one (or more) of those listed above are being included... Then std:: namespace should be recognized.
I hope this helps,
JTK