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 intension of a proposition comprises whatever the proposition entails: and it includes nothing else.... The connotation or intension of a function comprises all that attribution of this predicate to anything entails as also predicable to that thing.”
    —Clarence Lewis (1883–1964)

    “Literature does not exist in a vacuum. Writers as such have a definite social function exactly proportional to their ability as writers. This is their main use.”
    —Ezra Pound (1885–1972)

    ““... The state’s one function is to give.
    The bud must bloom till blowsy blown
    Its petals loosen and are strown;
    And that’s a fate it can’t evade
    Unless ‘twould rather wilt than fade.””
    —Robert Frost (1874–1963)