strbasic.h File Reference
         
    
#include <tchar.h>
|  | 
| #define | UNICODE | 
|  | 
| #define | STRCONST   L | 
|  | 
| #define | MCHAR_IS_WCHAR | 
|  | 
| #define | MCHAR   wchar_t | 
|  | MBCS/Unicode helper defines std::wofstream doesn't mix well with Unicode.  More... 
 | 
|  | 
| #define | LPCMSTR   const MCHAR* | 
|  | 
| #define | LPMSTR   MCHAR* | 
|  | 
| #define | _M_TEXT(x)   L ## x | 
|  | 
| #define | M_STD_STRING   std::wstring | 
|  | 
| #define | M_LOADSTRING   ::LoadStringW | 
|  | 
| #define | M_STD_OSTRINGSTREAM   std::wostringstream | 
|  | 
| #define | M_STD_ISTRINGSTREAM   std::wistringstream | 
|  | 
| #define | M_STD_CERR   std::wcerr | 
|  | 
| #define | M_STD_CIN   std::wcin | 
|  | 
| #define | M_STD_OSTREAM   std::wostream | 
|  | 
| #define | M_STD_ISTREAM   std::wistream | 
|  | 
| #define | M_STD_COUT   std::wcout | 
|  | 
| #define | M_STD_FOSTREAM   std::wofstream | 
|  | 
| #define | M_STD_FISTREAM   std::wifstream | 
|  | 
| #define | M_STD_ISTRSTREAM   std::wistringstream | 
|  | 
| #define | M_EOF   WEOF | 
|  | The 'EOF' value is unicode/mbcs build dependent for _puttc, _puttch, _ungettc, _ungettch, _ungettch_nolock, _fputts, _fputtc, _gettc, and _fgettc (and maybe other methods)  More... 
 | 
|  | 
| #define | _M(x)   _M_TEXT(x) | 
|  | Used to wrap string literals.  More... 
 | 
|  | 
| #define | M2A(p)   CW2A(p) | 
|  | 
| #define | A2M(p)   CA2W(p) | 
|  | 
| #define | M2W(p)   (p) | 
|  | 
| #define | W2M(p)   (p) | 
|  | 
| #define | M2W_UTF(p)   (p) | 
|  | 
| #define | W2M_UTF(p)   (p) | 
|  | 
| #define | M2T(p)   (p) | 
|  | 
| #define | T2M(p)   (p) | 
|  | 
| #define | A2CT_UTF(lpa)   CA2W(lpa, CP_UTF8) | 
|  | 
| #define | T2CA_UTF(lpw)   CW2A(lpw, CP_UTF8) | 
|  | 
| #define | A2CM_CP(lpa)   CA2W(lpa, CP_UTF8) | 
|  | 
| #define | M2CA_CP(lpw)   CW2A(lpw, CP_UTF8) | 
|  | 
MBCS/Unicode helper defines std::wofstream doesn't mix well with Unicode. 
If you try to output a character that is not representable in the current (window user) code page, the stream is flagged as 'in error', and no further output to that stream occurs. Plus, file output encoding should be that specified by the user, accessible via Interface14::DefaultTextSaveCodePage Thus, it is recommended that M_STD_FOSTREAM not be used. It is much better to use the TextFile::Reader/Writer classes and use the codepage accessed via Interface14::DefaultTextSaveCodePage. Likewise, the use std::wifstream (and _tfopen/fopen in text mode) is not recommended when reading string data as the current (window user) code page will be used. File input encoding should that specified by the user, accessible via Interface14::DefaultTextLoadCodePage Thus, it is recommended that M_STD_FISTREAM (and _tfopen/fopen in text mode) not be used. It is much better to use the TextFile::Reader/Writer classes and use the codepage accessed via Interface14::DefaultTextSaveCodePage. ! 
 
 
      
        
          | #define LPCMSTR   const MCHAR* | 
      
 
 
      
        
          | #define _M_TEXT | ( |  | x | ) | L ## x | 
      
 
 
      
        
          | #define M_STD_STRING   std::wstring | 
      
 
 
      
        
          | #define M_LOADSTRING   ::LoadStringW | 
      
 
 
      
        
          | #define M_STD_OSTRINGSTREAM   std::wostringstream | 
      
 
 
      
        
          | #define M_STD_ISTRINGSTREAM   std::wistringstream | 
      
 
 
      
        
          | #define M_STD_CERR   std::wcerr | 
      
 
 
      
        
          | #define M_STD_CIN   std::wcin | 
      
 
 
      
        
          | #define M_STD_OSTREAM   std::wostream | 
      
 
 
      
        
          | #define M_STD_ISTREAM   std::wistream | 
      
 
 
      
        
          | #define M_STD_COUT   std::wcout | 
      
 
 
      
        
          | #define M_STD_FOSTREAM   std::wofstream | 
      
 
 
      
        
          | #define M_STD_FISTREAM   std::wifstream | 
      
 
 
      
        
          | #define M_STD_ISTRSTREAM   std::wistringstream | 
      
 
 
The 'EOF' value is unicode/mbcs build dependent for _puttc, _puttch, _ungettc, _ungettch, _ungettch_nolock, _fputts, _fputtc, _gettc, and _fgettc (and maybe other methods) 
 
 
Used to wrap string literals. 
 
 
      
        
          | #define A2CT_UTF | ( |  | lpa | ) | CA2W(lpa, CP_UTF8) | 
      
 
 
      
        
          | #define T2CA_UTF | ( |  | lpw | ) | CW2A(lpw, CP_UTF8) | 
      
 
 
      
        
          | #define A2CM_CP | ( |  | lpa | ) | CA2W(lpa, CP_UTF8) | 
      
 
 
      
        
          | #define M2CA_CP | ( |  | lpw | ) | CW2A(lpw, CP_UTF8) |