/MAP:FULL Provides Translation of C++ Decorated NamesLast reviewed: July 17, 1997Article ID: Q84319 |
5.30 5.31.009 5.50 5.60 | 5.31
MS-DOS | OS/2kbtool The information in this article applies to:
SUMMARYWhen LINK versions 5.3 and later process a file created with Microsoft C/C++, the map file may contain decorated symbol names if the LINK command line includes the /MAP or /MAP:ADDRESS options. To create a map file that includes a translation of the decorated names, specify the /MAP:FULL option.
MORE INFORMATIONIn the map file undecorated symbols appear with explicit qualifications, even though default values were used in the original source code. The C++ compiler determines the values for the explicit qualifiers. For example, the following declaration is part of the HELLO.H file in the C/C++ version 7.0 Microsoft Foundation Classes (MFC) Samples directory:
CMainWindow:public CFrameWnd { public: CMainWindow(); ... }The decorated name for the CMainWindow constructor is as follows:
??0CMainWindow@@QAC@XZThe following undecorated name also appears in the map file if the LINK command line includes the /MAP:FULL option:
public:__near __pascal CMainWindow::CMainWindow(void)__nearBased on the memory model used to build the application, the compiler gave this constructor the __near and __pascal attributes. The __near declaration at the end of the undecorated name represents the qualification for the "this" pointer. In Microsoft C++, the "this" pointer for a non-static member function can be qualified. Because a static member function does not receive a "this" pointer, it does not have a "this" pointer qualifier. For more information, refer to Appendix B in the Microsoft C/C++ "Environment and Tools" manual for version 7.0.
|
Additional reference words: kbinf 5.30 5.31.009 5.50 5.60 LinkIss
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |