Share via


Glossary C

C calling convention

The C standard for calling a function — that is, pushing arguments onto the stack from right to left (in reverse order from the way they appear in the argument list). After the function returns, the calling function removes the arguments from the stack. The C calling convention permits a variable number of arguments to be passed. See also calling convention.

C linkage specifier

A declaration of a function or object as extern "C", indicating to the C++ compiler that the function name that follows the linkage specifier is an undecorated C function. C linkage allows existing C code to be used in new C++ applications. See also linkage specification.

C source file

A text file containing C language code.

C++ exception handling

Built-in support provided by the C++ language for handling anomalous situations, known as "exceptions," that may occur during the execution of a program. With C++ exception handling, a program can communicate unexpected events to a higher execution context that is better able to recover from such abnormal events. These exceptions are handled by code that is outside the normal flow of control. See also structured exception handling (SEH).

C++ header file

Or .HXX file. An external source file, identified at the beginning of a C++ program, that contains commonly used data types and variables used by functions in a program. The #include directive is used to tell the compiler to insert the contents of a header file into the program.

C++ source file

Or .CXX file. A text file containing C++ source code.

cache

A special memory subsystem in which frequently used data values and instructions are duplicated for quick access.

call level interface

A library of function calls that support SQL statements and conform to the SQL Access Group Call Level Interface specification. These calls are typically used for dynamic access to data. ODBC is a call level interface.

call stack

An ordered list of functions that have been called but have not returned, with the currently executing function listed first. Each call is optionally shown with the arguments and types passed to it. During a debug session, you can view the functions that have been called but have not returned.

callback function

An application-defined function that a system or subsystem (Windows, for example) calls. Typically, this happens when an event occurs or when windows or fonts are being enumerated. Examples of callback functions include window procedures, dialog-box procedures, and hook procedures. Callback functions are also used to process dynamic data exchange (DDE) transactions.

calling convention

A convention that determines the order in which arguments passed to functions are pushed on the stack (the calling sequence), whether the calling or called function removes the arguments from the stack, and the name-decorating convention the compiler uses to identify individual functions. See also C calling convention, calling sequence.

calling sequence

Determines the order in which parameters are pushed onto the stack during a function call and which code block is responsible for the stack pointer. Typically, the C compiler generates code that pushes parameters on the stack from right to left, beginning with the last parameter. See also calling convention.

caret

  1. Or insertion point. A flashing line, block, or bitmap that marks the location at which inserted text will appear in a window's client area.

  2. (^) When preceding a single uppercase letter, indicates a control character. For example, ^C is the same as CTRL+C.

  3. (^) A regular expression used to indicate either the beginning of a line or, when used within brackets, to indicate an exception.

carriage return character

A control character that tells a computer or printer to return to the beginning of the current line. This character can have a different textual representation on different platforms, but it always has the ASCII value of 13. See also carriage return–linefeed (CR-LF) pair.

carriage return–linefeed (CR-LF) pair

The combination of a carriage return character (ASCII 13) and a linefeed character (ASCII 10), represented in C/C++ by the newline (\n) character.

casting

Explicit or implicit conversion of one data type to another.

catch block

Or catch handler. In C++, a block of exception-handling code preceded by the keyword catch. The code in the catch block is executed only if the code in the try block throws an exception of the type specified in the catch statement. See also C++ exception handling, throw expression.

CGI

A mechanism that allows a Web server to run a program or script on the server and send the output to a Web browser. See also Internet Server Application Programming Interface (ISAPI).

Challenge Handshake Authentication Protocol

In ISDN, a type of signaling authentication that uses a pair of secret codes consisting of up to 16 characters. CHAP is shared by communications devices on both ends.

CHAP

In ISDN, a type of signaling authentication that uses a pair of secret codes consisting of up to 16 characters. CHAP is shared by communications devices on both ends.

character constant

A member of the "source character set," the character set in which a program is written, surrounded by single quotation marks ( '[\.thsp]). Character constants are used to represent characters in the "execution character set" on the machine where the program executes.

character index

The number of characters from the beginning of an edit control.

character-mode application

An application that does not provide its own graphical user interface (GUI). The Win32 API provides consoles for managing input and output for character-mode applications. See also console application.

checksum

An error-detection scheme that involves creating a sum of the bits in a set of bytes of data and using that sum to later check for a change in the data. Checksums are commonly used in communications software to check for data transmission errors.

child control

A child window used in conjunction with another window (its parent) to carry out simple input and output (I/O) tasks.

child process

A process initiated by another process (the parent process). The child process can operate independently from the parent process. Further, the parent process can suspend or terminate without affecting the child process.

child window

A window that has the WS_CHILD or WS_CHILDWINDOW style and is confined to the client area of its parent window, which initiates and defines the child window. Typically, an application uses child windows to divide the client area of a parent window into functional areas. See also child control, sibling window.

chord

A closed figure bounded by the intersection of an ellipse and a line segment. In Windows, a chord is outlined by using the current pen and filled by using the current brush.

CISC

A processor that uses complex instructions at the assembly language level, allowing flexible ways of calculating such elements as memory addresses. A single instruction set may comprise several simpler instructions. Contrast with RISC.

CL environment variable

An environment variable used to specify files and options for the compiler/linker so you do not have to specify them on the command line.

CL.EXE

Or CL. A driver program that controls the Microsoft C and C++ compilers and linker. The compilers produce Common Object File Format (COFF) object files. The linker produces executable (.EXE) files, dynamic-link libraries (DLLs), or static-link libraries.

class

A type that defines the interface of a particular kind of object. A class definition defines instance variables and methods, class variables and methods, and specifies the immediate superclass (or superclasses) and the interfaces that the class implements.

class declaration

In C++, the mechanism for declaring an aggregate data structure of type class. A class declaration provides a list of its members (such as functions, data, and other classes), specifies any friends of the class, and defines the level of visibility for all members.

class factory

An object that creates one or more instances of an object identified by a given CLSID. A class factory object implements the IClassFactory interface. A class factory is one of the most frequently used types of class objects in OLE.

class identifier

A universally unique identifier (UUID) that identifies a type of OLE object. Each type of OLE object (item) has its CLSID in the registry so that it can be loaded and programmed by other applications. For example, a spreadsheet may create worksheet items, chart items, and macrosheet items. Each of these item types has its own CLSID that uniquely identifies it to the system. See also registration entry file.

class library

A set of related C++ classes that can be used in an application, either as originally defined or as the source for other derived classes. The Microsoft Foundation Class Library included in Visual C++ is an example of a class library that defines a framework for integrating the user interface of an application for Windows with the rest of the application.

class method

In Java, any method that can be invoked using the name of a particular class. Since the declaration uses the keyword static, these are called static member functions in C++. Class methods, which are defined in class definitions, affect the class as a whole, not a particular instance of the class. Compare with instance method.

class scope

In C++, the degree of visibility afforded to a name (function or variable, for example) when it is declared within a class declaration. The name is accessible from outside the class by using the scope-resolution (::) operator. See also file scope, function scope, function-prototype scope, local scope.

class variable

In Java, a data item associated with a particular class as a whole, not with particular instances of the class. Class variables are defined in class definitions. Equivalent to static member variables in C++, since the declaration uses the keyword static. In C++, a class variable must be explicitly defined, external to the class declaration. See also instance variable.

ClassWizard file

A file that ClassWizard generates, containing information needed to edit existing classes or add new classes to a project. ClassWizard also uses the ClassWizard file to store information needed to create and edit message maps and dialog data maps, and to create prototype member functions. ClassWizard files have a .CLW filename extension.

CLI

A library of function calls that support SQL statements and conform to the SQL Access Group Call Level Interface specification. These calls are typically used for dynamic access to data. ODBC is a call level interface.

client

An application or a process that requests a service from some other process, or from an in-process server. See also client/server.

client area

Or client rectangle. The portion of a window where the application displays output such as text or graphics.

client coordinates

An ordered pair (x,y) of numbers, relative to the origin (usually the upper-left corner of a window's client area), that designates a point in the client area. See also window rectangle.

client item

An object that provides an interface between an OLE item and the container application, and that is of a class derived from the MFC class COleClientItem. Client items are maintained by the container application and give the container application access to the presentation data and the native data. Client items also provide site(location) information to the server application for in-place activation. See also embedded item, linked item, server item.

client object

An object issuing a request for a service. A given object may be a client for some requests and a server for other requests. See also server object.

client/server

  1. The most commonly used model for distributed applications. Client applications request services from a server application. A server can have many clients at the same time, and a client can request data from multiple servers. An application can be both a client and a server. See also client.

  2. In network architecture, a model for a local area network where clients initiate communication with the server, which carries out the requests in the form of replies. For example, the clients may be workstations communicating with a file server on which all of their data is stored. See also client.

clip path

A graphics object that an application can select into a device context. A clip path is always created by an application and it is used for clipping to one or more irregular shapes. For example, an application can use the lines and curves that form the outlines of characters in a string of text to define a clip path. See also clipping region.

clipboard

An area of storage, or buffer, where data objects or their references are placed when a user carries out a cut or copy operation.

clipboard format

The data format of a memory object on the clipboard. Applications can use the standard clipboard formats provided by Windows or register their own custom formats. A clipboard format is identified by a unique, unsigned integer value, called the "format name."

clipboard owner

Or owner application. The application associated with the information on the clipboard. It is possible for there to be no clipboard owner. See also clipboard viewer.

clipboard viewer

A window that displays the contents of the clipboard. See also clipboard owner.

clipboard-viewer chain

A link between all of the running clipboard-viewer applications, enabling them to all receive the messages that Windows sends to the current clipboard viewer.

clipping

  1. In Windows, the process of limiting output to a region or path within the client area in a window. For example, word processing and spreadsheet applications clip keyboard input to keep it from appearing in the margins of a page or spreadsheet.

  2. In Open GL, eliminating the portion of a geometric primitive that is outside the half-space defined by a clipping plane.

clipping precision

A 16-bit value that defines how to clip characters that are partially outside the clipping region.

clipping region

In Windows, the portion of a window's client area where the system permits drawing.

CLSID

A universally unique identifier (UUID) that identifies a type of OLE object. Each type of OLE object (item) has its CLSID in the registry so that it can be loaded and programmed by other applications. For example, a spreadsheet may create worksheet items, chart items, and macrosheet items. Each of these item types has its own CLSID that uniquely identifies it to the system. See also registration entry file.

code page

A character set, which can include numbers, punctuation marks, and other glyphs. Different languages and locales may use different code pages. For example, code page 1252 is used for American English and most European languages. See also locale.

COFF

In 32-bit programming, a format for executable and object files that is portable across platforms. The Microsoft implementation of COFF is derived from the UNIX specification for COFF,  but includes additional headers for compatibility with MS-DOS and 16-bit Windows. This Microsoft version is sometimes called the "portable executable (PE) file format."

collection class

In object-oriented programming, a class that can hold and process groups of class objects or groups of standard types. A collection class is characterized by its "shape" ( the way the objects are organized and stored) and by the types of its elements. MFC provides three basic collection shapes: lists, arrays, and maps (also known as dictionaries). See also collection object.

collection object

An object in a collection class.

color palette

An array containing the RGB values that identify the colors that can currently be displayed or drawn on the output device. Color palettes are used by devices that are capable of generating many colors but can only display or draw a subset of these at any given time. See also logical color palette.

COM

An open architecture for cross-platform development of client/server applications based on object-oriented technology as agreed upon by Digital Equipment Corporation and Microsoft Corporation. The Component Object Model defines an interface (similar to an abstract base class), IUnknown, from which all COM-compatible classes are derived.

combo-box control

In Windows, a child window that consists of a list box combined with either a static control or an edit control. The list-box portion of the control can either be displayed at all times or drop down when the user selects the drop-down arrow next to the control.

COMDAT record

A Common Object File Format (COFF) record that contains initialized common block data and makes packaged functions visible to the linker. See also packaged function.

command file

A text file that contains options and filenames you would otherwise type on the command line or specify using the CL or LINK environment variable. Since the command line is typically limited to 128 characters, a command file allows you to specify a large set of options or a very long file list to the compiler, linker, or resource compiler, for instance.

command handler

In MFC, a member function of an object which handles a request. Command handler member functions take no parameters and return void.

command identifier

Or command ID. In MFC, an identifier that associates a command message with the user-interface object (such as a menu item, toolbar button, or accelerator key) that generated the command. Typically, command IDs are named for the functionality of the user-interface object they are assigned to. For example, a Clear All item in the Edit menu might be assigned an ID such as ID_EDIT_CLEAR_ALL.

command line

A string of text typed at the command prompt, or executed from a command file, that specifies a task or tasks for  the operating system or an application to perform.

command message

  1. In Windows, a notification message from a user-interface object, such as a menu, toolbar button, or accelerator key. The framework processes command messages differently from other messages and such messages can be handled by a wider variety of object — documents, document templates, and the application object itself, in addition to windows and views.

  2. In Media Control Interface (MCI), a symbolic constant that represents a unique command for an MCI device. Command messages have associated data structures that provide information a device requires to carry out a request.

comment delimiters

Characters used to denote text in a program that is not source code, thus telling the compiler to ignore it. C++ allows the traditional comment delimiters:

/* this is a comment */

as well as a single-line comment delimiter:

// everything else on this line is a comment

commit size

The amount of a resource that is allocated (or "committed") for a particular use.  For example, in the header of a COFF file, the Windows NT–specific field Heap Commit Size specifies the size of the local heap that the linker and loader should allocate for that file. See also reserve size.

common data record

A Common Object File Format (COFF) record that contains initialized common block data and makes packaged functions visible to the linker. See also packaged function.

common dialog box

A dialog box predefined in Windows that supports standard operations, such as the Open command on the File menu. An application displays a common dialog box by calling a single function rather than by supplying a dialog box procedure and using a resource file containing a dialog box template.

Common Gateway Interface

A mechanism that allows a Web server to run a program or script on the server and send the output to a Web browser. See also Internet Server Application Programming Interface (ISAPI).

Common Object File Format

In 32-bit programming, a format for executable and object files that is portable across platforms. The Microsoft implementation of COFF is derived from the UNIX specification for COFF,  but includes additional headers for compatibility with MS-DOS and 16-bit Windows. This Microsoft version is sometimes called the "portable executable (PE) file format."

compact executable file

An executable binary (program) file whose code is limited to a single 64-kilobyte segment. Compact executable files usually have a .COM filename extension and are often used for utility programs and short routines. See also executable file.

compilation

The translation of source code into object code.

compilation unit

The smallest unit of code that can be independently compiled, usually a source code file. See also translation unit.

compile time

The point at which a program is being compiled, or the amount of time required to perform a compilation of a program.

compile-time error

A syntactic or semantic error that prevents a program from being compiled.

compiled resource file

Or binary resource file. A binary file that contains a Windows-based application's resource data and is created by the resource compiler from the resource-definition (.RC) file. Compiled resource files usually have a .RES filename extension. See also Macintosh binary resource file, resource compiler.

compiler

A program that translates source code, such as C++ or Pascal, into directly executable machine code.

compiler/linker driver

Or CL. A driver program that controls the Microsoft C and C++ compilers and linker. The compilers produce Common Object File Format (COFF) object files. The linker produces executable (.EXE) files, dynamic-link libraries (DLLs), or static-link libraries.

complete object

An instance of a derived class from which no other classes are derived. A complete object is an object that is not a subobject representing a base class.

Complex Instruction Set Computer

A processor that uses complex instructions at the assembly language level, allowing flexible ways of calculating such elements as memory addresses. A single instruction set may comprise several simpler instructions. Contrast with RISC.

component object

An object that conforms to COM. Clients deal with a component object only through a pointer to an interface. See also interface, reference counting, marshaling, aggregation.

Component Object Model

An open architecture for cross-platform development of client/server applications based on object-oriented technology as agreed upon by Digital Equipment Corporation and Microsoft Corporation. The Component Object Model defines an interface (similar to an abstract base class), IUnknown, from which all COM-compatible classes are derived.

composite moniker

A moniker that consists of two or more monikers that are treated as a unit. A composite moniker can be nongeneric, meaning that its component monikers have special knowledge of each other, or generic, meaning that its component monikers know nothing about each other except that they are monikers. See also generic composite moniker.

compositing

The process of superimposing one image on another to create a single image.

compound document

Or container document. A document within a container application that contains data of different formats, such as sound clips, spreadsheets, text, and bitmaps. Each piece of integrated data (or "compound-document object") can exist within the compound document as a linked item or an embedded item.

compound file

The OLE implementation of the structured-storage model, which specifies how data is saved to and retrieved from storage. Conceptually, a compound file is a number of individual files (or stream objects) multiplexed into one physical file (or storage object) that still allows access to each individual file.

Compressed SLIP

SLIP with data compression for a more efficient connection. See also Serial Line Internet Protocol (SLIP).

conditional expression

Or Boolean expression, logical expression. An expression that yields a Boolean value (true or false). Such expressions can involve comparisons, using relational operators such as the less-than (<) and greater-than (>) operators, and logical combination of Boolean expressions, using Boolean operators such as bitwise  AND (&) and logical OR (||).

connectable object

A COM object that supports event communication from the server to the client. The connectable object fires events by calling interfaces implemented on client objects. See also advise sink, connection point.

connection point

In OLE, a mechanism consisting of the object calling the interface, called the "source," and the object implementing the interface, called the "sink." The connection point implements an outgoing interface that is able to initiate actions, such as firing events and change notifications, on other objects. By exposing a connection point, a source allows sinks to establish connections to the source. See also connectable object.

connection string

Or connect string. In ODBC, a string expression used to open an external database.

console

An interface that provides input and output to character-mode applications. This processor-independent mechanism makes it easy to port existing character-mode applications or to create new character-mode tools and applications.

console application

  1. A character-mode application that uses a console window for its input and output. If necessary, the operating system will create a new console window, which exists until the application terminates.

  2. More generally, a program that runs from the operating system's command line, in character-mode, rather than from a graphical user interface.

constant

An object or variable that is not modifiable. In C++, the keyword const can be used to define constant values. See also manifest constant.

constant expression

An expression that is evaluated at compile time instead of run time. The constant expression can be used in any place that a constant can be used, but it must evaluate to a constant that is in the range of representable values for that type.

constructor

In C++, a special initialization function that is called automatically whenever an instance of a class is declared. This function prevents errors that result from the use of uninitialized objects. The constructor must have the same name as the class itself and must not return a value. See also copy constructor, default constructor, destructor.

container application

Or OLE container. An application that can incorporate embedded or linked items into its own documents. The documents managed by a container application are able to store and display OLE Visual Editing items as well as data created by the application itself. A container application allows users to insert new items or edit existing items. See also server application.

containment

A composition technique for accessing one or more COM objects via a single interface. It allows one object to reuse some or all of the interface implementations of one or more other objects. The outer object manages requests to other objects, delegating implementation when it uses the services of one of the contained objects. Contrast with aggregation.

context identifier (ID)

Or context reference. A unique number or string that corresponds to a particular object in the application — for example, to a menu command, form, control, or screen region. Context IDs are used to create links between the application and the corresponding Help topics.

context number

The number used to identify a Windows Help topic. If context numbers are not explicitly assigned to topics, the Help compiler generates default values by converting topic strings into context numbers. The [MAP] section of a Help project (.HPJ) file associates a context string and a context number. See also context string.

context string

A unique character string formatted as hidden text in a rich-text format (.RTF) file. Context strings link "hot spots" to target topics. The [MAP] section of a Help project (.HPJ) file associates a context string and a context number. See also context number.

control

An embeddable, reusable COM object that supports, at a minimum, the IOleControl interface. Controls are typically created for the user interface, but they also support communication with a control container. They can be reused by multiple clients, depending upon licensing restrictions.

control bar

A window that can contain buttons, edit boxes, check boxes, or other kinds of Windows controls. A control bar is usually aligned with the top or bottom of a frame window and provides quick, one-step command actions. Control bars include toolbars, status bars, and dialog bars.

control container

An application that supports the embedding of controls by implementing the IOleControlSite interface. See also control.

control identifier (ID)

A 16-bit value that an application uses to uniquely identify a child control. This ID is used in notification messages to the parent window when events, such as input from the user, occur in the control.

control property

A run-time property that is exposed and managed by the control itself. For example, the font and text size used by the control are control properties. See also run-time property.

controlling object

The object that manages access to the contained aggregate objects. See also containment.

conversion function

  1. In C++, a special member function that makes an explicit conversion from a given class type to another data type by using the operatortype-name**( )** syntax. Conversion functions are often called "cast operators" because they are the functions called when a cast operator is used.

  2. More generally, any function that converts one data type or format to another data type or format.

A unique identifier that is opaque (not aliased to anything else). The cookie may be an index, a hash value, or a pointer to some object in memory, but only the subsystem knows this. To the subsystem user, the cookie is just the name of a resource.

coordinate space

A planar space based on the Cartesian coordinate system.

coordinated universal time

A global time standard equivalent to Greenwich mean time (GMT).

copy constructor

In C++, a constructor with one parameter, whose type is a reference to another instance of the class. If a class is declared without a copy constructor, the compiler will generate one automatically. The copy constructor is used when an instance is created from another instance (for example, an assignment from one instance of the class to another).

CRC

An error-detecting method that uses a polynomial code. The method is sometimes referred to as the polynomial code.

critical section

A segment of code which is not reentrant; that is, it does not support concurrent access by multiple threads.  Often, a critical section is used to protect shared resources

cross compilation

A compilation of source code that takes place on one hardware platform but generates object code for another. For example, object code for the Power Macintosh can be compiled on an Intel-based Windows platform. See also compilation, object code.

CSLIP

SLIP with data compression for a more efficient connection. See also Serial Line Internet Protocol (SLIP).

cursor resource file

A file that contains an image that defines the shape of a cursor on the screen. Cursor resource files usually have a .CUR filename extension.

custom control

A special-format dynamic-link library (DLL) or object file that adds features and functionality to a Windows-based application user interface. A custom control can be a variation on an existing Windows dialog-box control (for example, a text box suitable for use with a pen and digitizing tablet) or an entirely new category of control. See also ActiveX control.

custom interface

An interface that uses no built-in mechanisms for marshaling, providing user-defined (custom) marshaling instead.

custom resource

Or application-defined resource. A resource that a developer creates and adds to an application's executable file that contains data required by the application. See also standard resource.

cyclic redundancy check

An error-detecting method that uses a polynomial code. The method is sometimes referred to as the polynomial code.