Microsoft Visual C++ Name Mangling - Function

Function

Typical type information in a function name looks like this:

  • Optional: Prefix _ (means __based property is used)
  • Access level and function type
  • Conditional: __based property, if used
  • Conditional: adjustor property (as encoded unsigned number), if thunk function
  • Conditional: CV-class modifier of function, if non-static member function
  • Function property

The table below shows codes for access level and function type:

none static virtual thunk
private: A, B C, D E, F G, H
protected: I, J K, L M, N O, P
public: Q, R S, T U, V W, X
none Y, Z

This kind of thunk function is always virtual, and used to represent the logical this adjustor property, which means an offset to the true this value in some multiple inheritance situations.

Read more about this topic:  Microsoft Visual C++ Name Mangling

Famous quotes containing the word function:

    “The mother’s and father’s attitudes toward the child correspond to the child’s own needs.... Mother has the function of making him secure in life, father has the function of teaching him, guiding him to cope with those problems with which the particular society the child has been born into confronts him.”
    —Erich Fromm (1900–1980)

    “The function of literature, through all its mutations, has been to make us aware of the particularity of selves, and the high authority of the self in its quarrel with its society and its culture. Literature is in that sense subversive.”
    —Lionel Trilling (1905–1975)

    “We are thus able to distinguish thinking as the function which is to a large extent linguistic.”
    —Benjamin Lee Whorf (1897–1934)