That #define thing you do for wcout/cout, you need something like that for wstring/string.
The compiler's almost certainly reported exactly what's wrong, but you've only pasted a part of what it reported and are asking about the missing part.
39 22 D:\c+++++\main.cpp [Error] '_TCHAR' has not been declared
D:\c+++++\main.cpp In function 'int _tmain(int, int**)':
53 45 D:\c+++++\main.cpp [Error] no matching function for call to 'std::basic_string<wchar_t>::basic_string(TCHAR [260])'
But you probably need to add:
#ifdef _UNICODE
#define tcout wcout
#define tcerr wcerr
#define tstring wstring
#else
#define tcout cout
#define tcerr cerr
#define tstring string
#endif
Then use std::tstring instead of std::wstring
i got error
1 2 3
47 22 D:\c+++++\main.cpp [Error] '_TCHAR' has not been declared
D:\c+++++\main.cpp In function 'int _tmain(int, int**)':
63 25 D:\c+++++\main.cpp [Error] no match for'operator!=' (operand types are 'const string {aka const std::basic_string<char>}' and 'std::wstring {aka std::basic_string<wchar_t>}')