In
software compiler engineering, name mangling (more properly called name decoration, although this term is less commonly used) is a technique used to solve various problems caused by the need to resolve unique names for programming entities in many modern
programming languages.It provides a way of encoding additional information about the name of a
function,
structure,
class or another
datatype in order to pass more semantic information from the
compilers to
linkers.The need arises where the language allows different entities to be named with the same
identifier as long as they occupy a different
namespace (where a namespace is typically defined by a module, class, or explicit namespace directive).
See more at Wikipedia.org...