M
machine language
  A language that can be used directly by the computer without intermediate processing. See native language.
macro
  An identifier followed by arguments or a parenthesized list of arguments that the preprocessor replaces with the replacement code located in a preprocessor define directive. See predefined macro.
macro source file
  A primary source file that contains global macros.
main function
  An external function with the identifier main, which is the first user function -- after exit routines and C++ static object constructors -- to get control when program execution begins. Each C and C++ program must have exactly one function named main.
make
  A utility that processes a makefile to build a project's target.
makefile
  A text file that specifies the dependencies of target files on source files, and states the commands to create target files from sources.
mangling
  The encoding during compilation of identifiers such as function and variable names to include type and scope information. The prelinker uses these mangled names to ensure type-safe linkage. See demangling.
manipulator
  A value that can be inserted into streams or extracted from streams to affect or query the behavior of the stream.
manual-reset event
  In the Windows operating system, an event used to signal several threads simultaneously that an operation has completed. See event.
map file
  A listing file that can be created during the prelink or link step and that contains information on the size and mapping of segments and symbols.
mask
  A pattern of bits or characters that controls the keeping, deleting, or testing of portions of another pattern of bits or characters. I, ANSI.
MBCS
  See multibyte character set.
MDI
  See multiple document interface.
member
  Data, functions, or types contained in classes, structures, or unions.
member function
  (1) In C++, an operator or function that is declared as a member of a class. A member function has access to the private and protected data members and member functions of objects of its class. (2) A function that performs operations on a class. See nonmember function.
message
  A request from one object that the receiving object implement a method. Because data is encapsulated and not directly accessible, a message is the only way to send data from one object to another. Each message specifies the name of the receiving object, the method to be implemented, and any parameters the method needs for implementation.
method
  See member function.
MIDI
  Musical instrument digital interface.
migrate
  To move an application to a changed version of the same operating environment or application development software. Contrast with port.
mix
  (1) An attribute that determines how the foreground of a graphic primitive is combined with the existing color of graphics output. (2) The combination of audio or video sources during postproduction.
mixer
  A device used to simultaneously combine and blend several inputs into one or two outputs.
mode
  A collection of attributes that specifies a file's type and its access permissions. X/Open, I.
module
  A linkable program unit that usually performs a particular function and that can be identified for compiling, combining with other units, and loading. A module may be self-contained or may contain references to other modules that must be satisfied when linking occurs.
module definition file
  A file used by the linker that contains module statements that define general attributes of the executable being linked, segment attributes, and imported or exported functions and data.
monadic operation
  See underflow.
monitor
  A window that allows a programmer to track specific types of messages as a debugging action is taking place.
mount
  (1) To place a data medium in a position to operate. (2) To make recording media accessible.
Moving Pictures Experts Group (MPEG)
  (1) A group that has established a standard for compressing and storing motion video and animation in digital form. (2) A compression standard for video and audio data that is stored on mass media.
MPEG
  See Moving Pictures Experts Group.
multibyte character
  A mixture of single-byte characters from a single-byte character set and double-byte characters from a double-byte character set. See single-byte character set, double-byte character set.
multibyte character set (MBCS)
  A character set whose characters consist of more than 1 byte. Used in languages such as Japanese, Chinese, and Korean, where the 256 possible values of a single-byte character set are not sufficient to represent all possible characters. See single-byte character set, double-byte character set.
multicharacter collating element
  A sequence of two or more characters that collate as an entity. For example, in some coded character sets, an accented character is represented by a non-spacing accent, followed by the letter. Other examples are the Spanish elements ch and ll. X/Open.
multibyte control
  See escape sequence.
multimedia
  Computer-controlled presentations combining three or more of the following elements: text, graphics, animation, full-motion images, still video images, and sound.
multiple document interface (MDI)
  An interface that uses a primary window to contain related document windows. The parent window's title bar is displayed along with the child window's title bar. If the child window displays a document window, an icon that indicates the application data's file type appears in the child window's title bar.
multiple inheritance
  (1) An object-oriented programming technique implemented in C++ through derivation, in which the derived class inherits members from more than one base class. (2) The structuring of inheritance relationships among classes so a derived class can use the attributes, relationships, and functions used by more than one base class. See inheritance.
multitasking
  (1) A mode of operation that allows concurrent performance or interleaved execution of more than one task or program. (2) A process that allows a computer or operating system to run multiple applications or tasks concurrently by dividing the processor's time among them rapidly. See preemptive multitasking.
multithread
  Pertaining to concurrent operation of more than one path of execution within a computer.
multithreading
  A process that allows a multitasking operating system to multitask subportions (threads) of an application smoothly.
musical instrument digital interface (MIDI)
  A standard used in the music industry for interfacing digital musical instruments.
mutex
  A semaphore that synchronizes data access across multiple processes. A mutex object is either signaled or nonsignaled, and is owned by a thread. See critical section, semaphore, event, signaled, nonsignaled.