Glossary

access specifier Denotes the level of protection for data members and methods from functions outside the class.

accumulator A variable that adds some value usually other than 1 to itself.

actual parameter Parameter that appears in a function call.

address-of operator An ampersand (&) used in a way that the address of an identifier is returned.

aggregation See containment.

algorithm A finite set of instructions that leads to a solution.

ALU See arithmetic logic unit.

ANSI Among other things, the American National Standards Institute (ANSI) formed a committee to standardize programming languages.

argument A value passed to a function. Usually called a parameter.

arithmetic logic unit Performs arithmetic computations and logical operations.

array A collection of two or more contiguous memory cells of a homogenous data type.

arrow operator Operator that accesses a data member or member function of a pointer to a structure, union, or class.

ASCII chart American Standard Code for Information Interchange (ASCII) chart associates characters with a number.

attribute Another term for “data member.” A variable contained within a class.

base member initialization Mechanism that allows the initialization of data members in a class constructor.

big-endian Writing information with the most significant byte (big end) first.

binary numbering system Base 2 numbers. Can contain digits 0 and 1.

binary operator An operator that has two operands.

binary scope resolution operator Operator that specifies that the identifier on the right belongs to the data type (usually a class) on the left.

binary search Search algorithm that logically cuts an array in half. Then a comparison is made to see which half the target would be located in, and it too is logically cut in half. This process continues until the target is located. This algorithm assumes that the array is ordered.

bit Binary digit. Can hold either 0 or 1.

bit field See bit structure.

bit structure Allows a programmer to specify that a member of a structure is to occupy only a certain number of bits in an integral type.

black box A stand-alone unit where the processing of the unit is hidden or ignored.

Boolean value Can either be true or false.

bounds of an array The valid index values of an array.

break statement Stops the execution of a control structure prematurely. In the case of a switch statement, the break is necessary to preempt multiple case statements from being executed.

breakpoint A debugging tool that stops the execution of a program at a specific line of code in the program. The programmer can then step through the code line by line.

bubble sort Sorting algorithm that moves the largest element to the end of the array. Once one element is in place, the process restarts back at the beginning of the array to bubble the next largest value to its place within the array. Each pass consists of comparing two elements, and if the first element is greater than the second, the elements are swapped. This continues until the end of the array is encountered.

buffer A specific area of memory that holds data.

bug Errors in a program or computer.

building A process that combines object code files into an executable. Also called linking.

byte A grouping of eight bits.

call stack Debugging tool that allows a programmer to view where in the hierarchy of the function calls the current line of execution is located.

central processing unit Hardware responsible for executing the set of instructions that directs the computer's activities and for managing the various hardware components.

character escape sequence Violates the rule that a character literal is a single character surrounded by single quotation marks. All escape sequences start with a backslash () followed by one or more characters.

character literal Single character enclosed in single quotation marks, such as ‘a’.

class Mechanism that is the basis for object-oriented programming. Contains data and functions.

class diagram UML tool that describes the components of a class.

colon init list See base member initialization.

column-major order The order in which an array is stored in memory column by column.

command-line arguments Data passed to a program via the command line. This data is caught in main's parameter list.

comment Lines of code that are ignored by the compiler. Like whitespace, using comments has no impact on the overall behavior, flow, or size of your program. These lines are used to document the source code for you or for other programmers. Comments aid in the readability and maintainability of your code.

compilation A process that translates the entire program to machine language and creates a file that can be executed by the operating system.

compiler An application that translates the source code into machine language. Sometimes called a language translator.

composition See containment.

conditional compilation Ability to specify what statements are compiled, depending on the evaluation of a condition. This is accomplished through the use of preprocessor directives.

console application A text-based application. Usually doesn't include any of the familiar graphical user interface (GUI) features.

const method Member function that guarantees that no data members will be changed within the function.

constant An identifier that has an associated value that will never change. Constants must be initialized.

control variable A variable with an initial value that controls whether the body of a loop is executed.

constructor A special function that is automatically called anytime an object is instantiated. The job of the constructor is to build, or construct, the object, including the allocation of any resources.

containment When a data member is an object instantiated from another class.

control characters Escape sequences that don't display anything but control the position of the text displayed.

control unit Responsible for the actual execution of instructions as well as manages when the instruction is executed. The control unit tells the ALU what to do and when to do it.

counter A variable that is always incremented, adding 1 to itself.

CPU See central processing unit.

cString A null-terminated character array.

ctor See constructor.

CU See control unit.

dangling pointer A pointer containing an address that is no longer valid.

data file A group of related records physically stored on a disk or some other storage media.

data hierarchy A grouping of data or information. Typically consisting of a bit, byte, field, record, and file.

data members Variables contained within structures, unions, and classes.

data structure Organization of data in memory so that the information can be used in an efficient manner.

database A storage mechanism used to house large amounts of data.

deallocation Freeing memory dynamically allocated to a program.

debugger A set of tools that helps the programmer locate errors or bugs.

debugging Process of removing runtime and logic errors.

decimal numbering system Base 10 numbers. Can contain digits 0-9.

deep copy Allocation of additional memory for a pointer data member when two variables created from a structure, union, or class are copied. The data is then copied to the newly allocated memory.

default argument A value provided in the function declaration that will automatically be inserted if no value is provided in the function call.

default constructor Constructor that can be called without any parameters.

dereferencing Using the indirection operator to acquire the value being referred to by the pointer.

desk checking The process of manually verifying the logic of your solution.

destructor Member function automatically invoked when an object is destroyed. Its job is to free up any allocated resources.

diamond inheritance Two parents of a derived class that share a single parent.

dot operator Operator that accesses a data member or member function of a variable created from a structure, union, or class.

doubly linked list Linked list where each element also points to the previous node in the list.

dtor See destructor.

dynamic memory allocation Process of requesting memory from the operating system at runtime.

element Area within the block of memory where one piece of data will be stored.

embedded system Computer designed to perform only one or a limited number of tasks. Most embedded systems include both hardware and software together and can be placed collectively on a single microprocessor.

encapsulation Ability to enclose the data or attributes that describe the object, as well as the functions that manipulate the data, into one container.

enumerated data type Association of a list of identifiers with a type name. Any variable of this newly created type can have only the values specified in the identifier list.

EOF End-of-file.

field A collection of related bytes. Holds all of the characters or data for a specific piece of information.

file pointer A C term representing a pointer used to access a file once it has been opened. The pointer is returned during the opening process.

file position marker Often referred to by other names such as file pointer and cursor. This marker designates the current position within the file.

file scope Identifiers that are only visible within a source code file.

firmware Software designed for an embedded system. Since the software is located on a chip, it is no longer volatile and performs only predefined tasks, unlike general purpose desktop computers.

flag A value that represents a specific setting or state.

flagged bubble sort Variation of the bubble sort algorithm that uses a flag to determine when the list is ordered.

flash drive Another form of nonvolatile storage. These extremely popular devices, sometimes referred to as pen or thumb drives, are made up of a relatively small circuit board that is encased in a protective plastic housing.

floppy disk A form of nonvolatile storage that is quickly becoming outdated. Floppy disks are made up of a flexible piece of material containing a magnetic recording surface that can store data.

flowchart A graphical or pictorial representation of an algorithm. It is a series of standardized shapes, each with its own meaning, arranged to represent the overall flow of the program.

formal parameter Parameter that appears in a function header.

FPM See file position marker.

function A group of related statements that together perform a specific task or job.

function body The statements that specify what the function is to do when it is invoked.

function call Statement that invokes a function. Transfers the control of the program to a specific function or method.

function declaration Statement provided so that when the compiler encounters the function call, it can verify the existence of the function name and the required parameters. Sometimes called a function prototype.

function definition The combination of the function header and a function body.

function header The first line in a function definition. It is the entry point into the function.

function overloading Ability to have multiple versions of a function with the same name as long as the number and type of parameters are different.

function pointer Pointer that holds the address of a function.

function prototype See function declaration.

function signature Method for identifying a specific function based on its name and the order and number of parameters it takes.

functional programming A paradigm that has its roots in mathematics and centers on the program being made up of a collection of mathematical-like functions.

generalization See inheritance.

generic programming Feature of object-oriented languages allowing a programmer to specify that a class will contain data members whose data type can change to meet the programmer's needs.

getter Member function that returns the value of a specific data member.

gigabyte Abbreviated as GB. Roughly 1 billion bytes.

global Declared outside of all functions. Can be accessed by any function within the source-code file.

graphical user interface Uses pictures and other graphic symbols to help make a program—including operating systems—easier to use.

GUI See graphical user interface.

hacking An undesirable form of trial-and-error programming.

hard disk A nonvolatile form of storage. Usually stores the operating system and other applications.

hardware The physical components of a computer.

“has a” relationship Refers to the relationship between a class and a data member that is an object of another class.

head pointer Pointer to the beginning of a list.

header file External or separate files containing information necessary to access predefined routines. Can also be created by the programmer.

heap Memory not currently being used by the operating system or running programs.

hex dump Showing the contents of a binary file or memory in hexadecimal format as well as offering a translation of those bytes recognizable as ASCII or Unicode characters.

hexadecimal numbering system Base 16 numbers. Can contain digits 0-9 and A-F.

IC See integrated circuits.

IDE See integrated developer's environment.

implementation hiding Concealing the details of the class from the user of the class.

indirection Method of referencing a variable in a roundabout way rather than directly accessing the variable by its name. Accessing a variable's value via its memory address rather than its name is an example of indirection.

infinite loop A loop that continuously executes. The program or loop has to be terminated by the user or programmer.

information hiding Ensuring that only the class's methods can change the state of its data members.

inheritance Ability to take an existing class and extend its functionality to form another class.

initialization The process of giving a variable a value during its declaration. As a result, the variable will always be in a known state.

input device Provides a mechanism with which the user communicates with the computer.

instantiation Creating or declaring a variable using a class as its data type.

integral data type Any data type that can only hold whole numbers. The char data type is an integral data type because under the hood a char holds an ASCII number representing a character.

integrated circuits Often referred to as ICs. Can contain a large number of different components such as resistors, transistors, and capacitors.

integrated developer's environment Combines many development tools into one application.

interpretation The source code is translated line by line and immediately executed. This takes place when the program is running, so interpreted programs tend to execute slower than other forms of language translation.

IPO Acronym for input-process-output.

“is a” relationship Refers to the relationship between a derived class and its parent.

iteration The process of looping or repetition.

key value A piece of data that is used to uniquely identify a record.

language translator An application that translates the source code into machine language. Sometimes called a compiler.

levels of indirection Number of intermediate pointers before reaching the actual data.

lexical analysis Character-by-character comparison.

linear search Search algorithm that starts at the first record, comparing a value from within arrays, or some other data structure, to a user-specified target. If the value matches the target record, process the information; otherwise, move to the next record.

linked list Data structure that organizes its data so that one element points to the next element in the data structure.

linker An application that combines object code files into an executable.

linker error Errors produced by the linker because of inaccurate or missing definitions.

linking A process that combines object code files into an executable. Also called building.

literal A value that is interpreted exactly as it is written.

little-endian Writing information to memory least-significant-byte (little end) first.

local variable A variable declared in the body of a function or control statement. The variable will only be accessible from within that body. When the execution leaves the body, the variable is destroyed.

logic error Error that causes a running program to produce incorrect results.

logical operator An operator that is used to make compound conditions.

l-value The appropriate constructs that can be placed on the left side of an assignment operator. Variables are l-values; constants are not.

macro Sections of code that physically replace the identifier during the compilation process.

manager functions Special functions that perform fundamental tasks associated with a class, such as assignment, copy, and initialization. The four manager functions are constructor, destructor, copy constructor, and the assignment operator.

manipulator A command that is directly placed into the stream.

masking Process of extracting information from a larger set of data using an operator and another piece of data.

megabyte Abbreviated as MB. Roughly 1 million bytes.

member function A function that is defined as a part of a class.

memberwise copy Duplicates the contents of the data members by performing a bitwise replication of the variable.

memory leak Happens when memory is allocated but is not deallocated. If this situation continues, your computer will eventually run out of memory and will need to be rebooted.

method Another term for a member function. A function contained within a class.

microprocessor An IC containing components that execute a program.

motherboard Used to connect all of the various hardware components together.

multiple inheritance Inheriting from more than one class.

mutator Method that changes the state of an object's data members.

name decoration See name mangling.

name mangling Process the compiler takes to ensure that each function has a unique name. When a C++ compiler translates a function into object code, the data type of each parameter is used in conjunction with the function name to create a unique identifier.

namespace A method provided in C++ that allows the grouping of related entities inside one category. Literally, it is a named space.

narrowing conversion Automatic process of converting a data-type value to a smaller data type. Data could be lost.

nested loop A loop embedded in another loop.

nesting The placement of one construct in the body of another construct.

node Element in a list.

null Value used to initialize pointers.

null character ASCII value 0. Used, among other things, to give a character variable an initial value. Also used to terminate a cString.

object Variable created using a class.

object code Binary file produced by a compiler.

object-oriented programming In the OOP paradigm, the central component is considered an object. In this paradigm, the focus is on the objects and their relationships and interactions.

octal numbering system Base 8 numbers. Can contain digits 0-7.

OOP See object-oriented programming.

operating system Responsible for managing the various tasks on your computer. These tasks include such activities as preparing the computer when the machine is turned on, dealing with various input requests from such devices as the keyboard and the mouse, managing output requests to the display or printers, and managing the overall storage system.

order of precedence Established order that must be adhered to when evaluating expressions with multiple operations.

ordered list List in which each node is put in the appropriate place within the list.

ordinal data type Those data types that can be translated into an integer to provide a finite number set.

out of bounds Accessing an element, or memory cell, that does not belong to the array.

output buffer Holds information until a signal is received to write the entire buffer to the output device.

output device Used to communicate information or processed data from the computer to a user.

overloading Process of providing an alternative definition for a function or an operator.

padding Placing spaces on either side of the displayed data.

parallel arrays Arrays where one element or row corresponds to a specific field in a record.

parameter A value passed to a function.

passing Giving a value to a function.

passing by const-ref Allows a parameter to be passed by reference to avoid the performance cost of making a copy of the object, but still has the safety of passing by value because the object cannot be changed.

passing by pointer Process of passing an address of an actual parameter to a function. Any changes to the parameter in the called function will be reflected in the actual parameter.

passing by reference Process of passing a reference or alias to the parameter. Any changes to the parameter in the called function will be reflected in the actual parameter.

passing by value Process of making a copy of a parameter and passing the copy. The original value will be retained when the function ends.

pointer Variable that holds an address.

polymorphism Ability of different objects to respond differently to the same message.

post-test loop A loop whose condition is evaluated after the first execution of the body of the loop.

predefined routine Not part of the core language but an extension to the language. These routines are a part of the C++ standard and are accessed through header files.

preprocessor An application that executes prior to language translation.

preprocessor directive A command executed by the preprocessor. All preprocessor directives start with a # symbol.

pre-test loop A loop whose condition is evaluated prior to the execution of the body of the loop.

priming read Ensures that the control variable of a loop has a user-provided value before evaluating the condition. Can also refer to the initial access of a file before entering the loop.

primitive data type A data type whose definition is built into the language.

procedural programming paradigm Paradigm that focuses on breaking down a particular programming problem into various pieces, subprograms, or routines. Each of these individual components performs a specific function and is executed as needed.

processor See microprocessor.

program The set of instructions to be performed by the computer; often called computer software.

programming language A language containing a finite list of keywords and constructs that can be used by a programmer to direct the operations of a computer.

programming paradigm Different approaches for visualizing a problem's solution or an overall project structure.

prompt Text displayed to the user asking (prompting) him or her to do something.

property Another term for “data member.” A variable contained within a class.

pseudocode A written list of the individual steps needed to solve the problem independent of any programming language.

ragged array Array of character pointers in which each element points to a different-length cString.

RAM See random access memory.

random access memory Memory within a computer that is used for holding the program and any information needed to perform the necessary processing. It is often referred to as short-term memory because the data contained within RAM will be lost when the computer is shut off or loses power.

record A group of related fields.

recursive function A function that calls itself.

register Unique high-speed sections of memory within the CPU.

relational operator An operator that is used to compare two values.

report Generated for human consumption; usually includes title information, column headings, and other formatting.

reserved word Has a special or predefined meaning within the language and therefore cannot be used as a user-defined identifier.

return Statement that gives back a value to the calling function.

row-major order The order in which an array is stored in memory row by row.

run time error Error that causes a program to abruptly terminate, or crash, during execution.

r-value The values that appear to the right of an assignment operator.

scope Where, within your code, the variable can be referenced and used.

selection statement Conditional statement that chooses a single outcome. The C++ switch statement is an example.

self-contained The ability of an object to stand alone.

self-referential pointer Pointer whose data type is the same as the one in which the pointer is declared.

sequential search See linear search.

setter Member function that is passed a parameter, which will then be assigned to a specific data member.

shallow copy Memberwise copy of pointers contained within a structure, union, or class, resulting in two pointers pointing to the same piece of memory.

short-circuit evaluation The early termination of a compound condition evaluation once the result is determined.

software The instructions that tell the computer what to do.

sorted list List that is created and then ordered.

source-code file File containing the program written by the programmer.

specialization Relationship between parent and child class.

stack A place in memory where a program's variables are stored. Also a type of data structure.

stepwise refinement Breaking the program into smaller, more manageable, and detailed pieces. Each piece is then designed, implemented, and tested.

storage classes Regulate the lifetime, visibility, or memory placement of a variable.

stream A flow of information.

string literal Multiple characters surrounded by double quotation marks (“/”).

structure Encapsulation of variables of any type into one UDT. Some languages call this concept a record.

structure chart A graphical design tool that specifies where the functions in the program are called from. It specifies the hierarchy of the functions in a program.

subscript Specifies the offset from the beginning address of an array.

syntax error Caused by something incorrect in the mechanics of the statement(s). An executable cannot be created until all syntax errors are corrected.

symbol table A table that holds all of the literals (symbols) needed for a program.

system software Manages the various hardware components of a computer, and coordinates the loading and execution of application programs.

tail pointer Pointer to the end of the list.

template C++ mechanism to achieve generic programming.

ternary operator An operator with three operands. The conditional operator is an example.

tokenizing Process of separating data into pieces of information based on a specific delimiter.

trailing pointer Pointer used to follow one node behind a traveling pointer.

traveling pointer Pointer that will be used to traverse the list.

truth table The Boolean results produced when an operator is applied to the specified operands.

typecasting Used to force a value to be converted from one type to another.

UDT See user-defined data type.

UML See Unified Modeling Language.

unary operator An operator that has one operand.

Unified Modeling Language Includes standardized symbols for use in developing, documenting, and modeling a software system or application. UML includes a number of different types of diagrams for modeling or representing a software system, each providing a different perspective on the system. These diagrams include such tools as use cases, class diagrams, sequence diagrams, and state diagrams.

union Mechanism allowing for the creation of a UDT that contains many data members but can store only one. The amount of memory allocated for the variable is dependent on the largest data member of the union.

user-defined data type Data type created by the programmer.

variable A placeholder whose contents can change.

void In C and C++, it literally means “nothing.” Therefore, if a function has a void return type, the function will return nothing.

watch A debugging tool that allows the programmer to view the contents of a variable.

whitespace Usually refers to empty spaces inserted around related items. In the area of computer science and programming, the term refers to an empty or nonvisible character (i.e., space or tab), including blank lines.

widening conversion Automatic process of converting a data type value to a larger data type. No data will be lost in this conversion.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.21.159.82