Export (0) Print
Expand All

CDumpContext::operator <<

Outputs the specified data to the dump context.

CDumpContext& operator <<( 
   const CObject* pOb  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   const CObject& ob  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   LPCTSTR lpsz  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   const void* lp  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   BYTE by  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   WORD w  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   DWORD dw  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   int n  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   double d  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   float f  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   LONG l  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   UINT u  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   LPCWSTR lpsz  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   LPCSTR lpsz  
); 
throw( 
   CFileException*  
); 
CDumpContext& operator <<( 
   LONGLONG n  
); 
CDumpContext& operator <<( 
   ULONGLONG n  
); 
CDumpContext& operator <<( 
   HWND h 
); 
CDumpContext& operator <<( 
HDC h 
); 
CDumpContext& operator <<( 
HMENU h 
); 
CDumpContext& operator <<( 
HACCEL h 
); 
CDumpContext& operator <<( 
HFONT h 
);

A CDumpContext reference. Using the return value, you can write multiple insertions on a single line of source code.

The insertion operator is overloaded for CObject pointers as well as for most primitive types. A pointer to character results in a dump of string contents; a pointer to void results in a hexadecimal dump of the address only. A LONGLONG results in a dump of a 64-bit signed integer; A ULONGLONG results in a dump of a 64-bit unsigned integer.

If you use the IMPLEMENT_DYNAMIC or IMPLEMENT_SERIAL macro in the implementation of your class, then the insertion operator, through CObject::Dump, will print the name of your CObject-derived class. Otherwise, it will print CObject. If you override the Dump function of the class, then you can provide a more meaningful output of the object's contents instead of a hexadecimal dump.

#if _DEBUG
   CStringList li;
   li.AddHead(_T("item 0"));
   li.AddHead(_T("item 1"));
   CString s = _T("test");
   int i = 7;
   long lo = 1000000000L;
   LONGLONG lolo = 12345678901234i64;
   afxDump << _T("list=") << &li << _T("string=")
      << s << _T("int=") << i << _T("long=") << lo 
      << _T("LONGLONG=") << lolo << _T("\n");
#endif

Header: afx.h

Show:
© 2015 Microsoft