Appendix B. Glossary

Hour 1
Library

A collection of linkable files that were supplied with your compiler, you purchased separately, or created yourself.

Function

A block of code that performs a service, such as adding two numbers or printing to the screen.

Class

The definition of a new type. A class is implemented as data and related functions.

Compiler

Software that can translate a program from human-readable form to machine code, producing an object file that will later be linked (see linker) and run.

Linker

A program that builds an executable (runnable) file from the object code files produced by the compiler.

Hour 2
Compiling

The first step in transforming code from a compiler into what is called object code in an object file (.obj).

Linking

The second step in creating an executable file; links together the object files produced by a compiler into an executable program.

Executable Program

A program that runs on your operating system.

Interpreter

An interpreter translates a program from human-readable form to machine code while the program is running.

Procedural Programming

A series of actions performed on a set of data.

Structured Programming

A systematic approach to breaking programs down into procedures.

Encapsulation

Creating self-contained objects.

Data Hiding

Hiding the state of a class in private member variables.

Inheritance

Creating a new type that can extend the characteristics of an existing type.

Polymorphism

The ability to treat many sub-types as if they were of the same base type.

Preprocessor

A program that runs before your compiler and handles lines that begin with a pound (#) symbol.

Comment

Text which does not affect the operation of your program, but which is added to instruct or inform the programmer.

Signature

The name of a function and its arguments.

Hour 3
Variable

A named memory location in which you can store a value.

RAM

Random Access Memory.

Type

The size and characteristics of an object.

Signed

A variable type that can hold negative and positive values.

Unsigned

A variable type that can hold only positive values.

ASCII

(American Standard Code for Information Interchange) A system for encoding the characters, numerals, and punctuation used by many computers.

Case-Sensitive

When uppercase and lowercase letters are considered to be different (myVal is not the same as Myval).

Typedef

A type definition.

Constant

Data storage locations whose value will not change while the program is running.

Literal Constant

A value typed directly into the program, such as 35.

Symbolic Constant

A typed and named value marked as constant such as BoilingPoint.

Enumerated Constants

A named set of constants.

Hour 4
Statement

A way to control the sequence of execution, evaluate an expression, or do nothing (the null statement).

Whitespace

Spaces, tabs, and new lines.

Compound Statement

Replaces a single statement with a series of statements between an opening brace and a closing brace.

Expression

Any statement that returns a value.

Operator

A symbol that causes the compiler to take an action.

Operand

A mathematical term referring to the part of an expression operated upon by an operator.

Assignment Operator (=)

Causes the operand on the left side of the assignment operator to have its value changed to the value on the right side of the assignment operator.

L-Value

An l-value is an operand that can be on the left side of an operator.

R-Value

An r-value is an operand that can be on the right side of an operator.

Relational Operators

Determine whether two numbers are equal or if one is greater or less than the other.

Incrementing

Increasing a value by 1.

Decrementing

Decreasing a value by 1.

Prefix Operator

The prefix operator (++myAge) increments before evaluation.

Postfix Operator

The postfix operator (myAge++) increments after evaluation.

Precedence Value

The precedence value tells the compiler the order in which to evaluate operators.

Hour 5
Stack

A special area of memory allocated for your program to hold the data required by each of the functions in your program.

Function Declaration

Tells the compiler the name, return type, and parameters of the function.

Prototype

Declaration of a function.

Function Definition

Tells the compiler how the function works; it is the body of the function.

Function Parameter List

The list of all the parameters and their types, separated by commas.

Local Variables

Variables that exist only within a function.

Scope

Where a variable is visible and can be accessed.

Global Variables

Variables accessible from anywhere within the program.

Hour 6
Iteration

Doing the same thing again and again.

Hour 7
Clients

Other classes or functions that make use of your class.

Member Variables

(also known as Data Members) The variables in your class.

Data Members

See [Member Variables (also known as Data Members) The variables in your class.]
Member Functions

(also called Member Methods) The functions of your class.

Member Methods

See [Member Functions (also called Member Methods) The functions of your class.]
Object

An instance of a class.

Public Access

Access available to methods of all classes.

Private Access

Access available only to the methods of the class itself or to methods of classes derived from the class.

Accessor Methods

Methods used to access private member variables.

Method Definition

A definition that begins with the name of the class followed by two colons, the name of the function, and its parameters.

Default Constructor

A constructor with no parameters.

Hour 8
Constant member function

A constant member function promises that it won't change the value of any of the members of the class.

Hour 9
Pointer

A variable that holds a memory address.

Indirection

Accessing the value at an address held by a pointer.

Hour 11
Reference

An alias to an object.

Hour 13
Shallow Copy

Copies the exact values of one object's member variables to another object. Also called a member-wise copy.

Deep Copy

Copies the values of member variables, and creates copies of objects pointed to by member pointers.

Hour 14
Unary Operator

An operator which takes only one term, such as a++, as opposed to a binary operator which takes two terms, such as a+b.

Binary operator

An operator which takes two terms, such as a+b.

Ternary operator

An operator which takes three terms. In C++ there is only one ternary operator, the ?: operator, used as

a < b ? true : false;

which will return true if a is less than b, and otherwise will return false.

Arity

How many terms an operator takes. The possible values for a C++ operator's arity are unary, binary, and ternary.

Hour 15
Array

A collection of objects all of the same type.

Subscript

Offsets into an array. The fourth element of myArray would be accessed as myArray[3];

String

An array of characters ending with a null character.

Hour 16
Stubbing Out

Writing only enough of a function to compile, leaving the details for later.

Overriding

When a derived class creates a member function that changes the implementation of a function in the base class. The overridden method must have the same return type and signature as the base method.

Hour 19
Linked List

A data structure that consists of nodes linked to one another.

Singly Linked List

A linked list in which nodes point to the next node in the list, but not back to the previous.

Doubly Linked List

A linked list in which nodes point both to the next node in the list and also the previous node in the list.

Tree

A complex data structure built from nodes, each of which points to two or more other nodes.

Hour 20
Friend

Keyword to provide another class with access to the current class's private member variables and methods.

Hour 21
#define

A command that defines a string substitution.

Token

A string of characters.

Hour 22
Waterfall

A method in which each stage is completed before the product is passed on to the next stage. Each stage is discrete and self-contained.

Simulation

A computer model of part of a real-world system.

Conceptualization

The core idea of the software project.

Use case

A description of how the system will be used.

Problem space

The set of problems and issues your program will try to solve.

Solution space

The set of possible solutions to the problem.

Driver program

A test program.

Hour 23
Template

Provides the ability to create a general class or method and pass types as parameters.

Instantiation

Creating an object from a class, or a type from a template.

Hour 24
Exception

An object that is passed from the area of code where a problem occurs to the part of the code that is going to handle the problem.

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

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