Cretical Meanings in C++
Cretical Meanings in C++
Table of Contents
Term Description
An abstract class is one that can only be a base class of
Abstract class
other classes and cannot be instantiated.
An abstract method is one that only contains the method
Abstract method
signature and no method body.
Abstraction is a mechanism of showing only the relevant
Abstraction details of a process or artifact and hiding the irrelevant
details pertaining to an object.
An access modifier is used with class, data fields as well as
Access modifier
methods to restrict access to them from outside the class.
Accessor is the method through which the object can
Accessor
retrieve the value of a data field.
Ambiguity of name is a situation in multiple inheritance
Ambiguity of name that arises when the base classes have a method with the
same name and signature.
A class that does not have an identity is called an
Anonymous class
Anonymous class.
Abstract Window Toolkit (AWT) is an API used for creating
AWT
GUIs for Java programs.
Term Description
The Base Class Library provides a set of classes for creating the
Base Class user interface, Web application development, database
Library connectivity, network communication, cryptography, and
numeric algorithms.
Term Description
CardSpace is an instance of identity client software called an
Identity Selector and is used to store references to a user’s
Card Space
digital identity and present them to the user as visual
Information Cards.
A class is a structure that defines and encloses the data
Class members or characteristics and methods or behavior pertaining
to a particular entity.
Class diagram is used to describe the structure of the classes of
Class diagram a system along with its attributes, methods and the
relationships between them.
Common Language Runtime (CLR) is a component that provides
CLR important runtime services such as security, memory
management, and exception handling to the code.
Cohesion is the degree to which a particular component is
Cohesion
designed for specific and focused purpose.
A component is any object that can be displayed on the screen
Component
with which the user can interact.
Composite A composite pattern arranges components into a tree structure
pattern consisting of individual objects as well as composite objects.
Conceptual Conceptual model describes the problem domain and states the
model user requirements for the system.
Constant A constant is a variable whose value is fixed during compilation
variable and does not change later.
A constructor is a specialized method that has the same name
Constructor as the class name. It is used to construct an object of a class
and initialize its data members.
A container is a special type of component that can hold other
Container
components within it.
Coupling is the degree to which the components know about
Coupling
each other.
Component-Responsibility-Collaborator (CRC) cards consist of
CRC cards the name of the software component, the responsibilities and
names of other components to which it interacts.
Term Description
Data model helps to visualize how the data will be
Data model
represented and used in the system.
The decorator pattern is used to dynamically add or remove
Decorator pattern
responsibilities to an object without affecting other objects.
Diamond problem is created when a class derives from more
Diamond problem
than one base classes that have a common super class.
Dynamic polymorphism is a technique where the method
Dynamic
calls and data bindings are not fixed at compile time and are
polymorphism
decided at runtime.
Term Description
Encapsulation is used to consciously hide information in a
Encapsulation small part of a program to restrict access to some of the
data members by objects.
Term Description
The facade pattern uses an additional layer or class like a mask
Facade pattern
to make a complex system simpler.
A factory class is one that is used to create different types of
Factory class
objects based on a user’s requirement.
The factory pattern is a pattern that refers to a factory of
Factory pattern
objects of classes.
Forward declaration of a function is a statement that informs
Forward the compiler about the signature of the function without its
declaration implementation before the function is used or defined in the
code.
Foundation methods are methods that get inherited from the
Foundation parent and reflect the reuse of code supplied by the parent.
methods They are defined in a parent class and become part of a child
class through inheritance but are not overridden.
A framework is a set of reusable software components or
Framework
classes that form the basis of an application.
Frozen sections define the overall architecture of a system such
as its basic components and the relationships between them.
Frozen sections
These sections remain unchanged or frozen in any application
of the framework.
Term Description
Generalization is a technique in which the specific
characteristics of an object are masked and only the common
Generalization
features of the category to which the object belongs are
exposed.
Generics is a technique of making a class more abstract by
Generics defining the behavior of the class without specifying the data
type that will be handled by the operations of the class.
Term Description
‘Has-a ‘abstraction shows container-content or part-of relation
Has-a
between the objects.
Hierarchical When more than one child class derives from one base class it is
inheritance called hierarchical inheritance.
High High cohesion results when a task is divided among multiple
cohesion components, each having a very specific or cohesive role.
Hot sections represent those parts where the developers using the
Hot sections framework add their own code to achieve the functionality specific
to their own project.
Hybrid When a class derivation involves more than one form of
inheritance inheritance, it is called hybrid inheritance.
Term Description
Inheritance is a technique used to define hierarchical
Inheritance relationships among classes at different levels and gives code
reusability.
Inner class A class defined inside another class is known as an inner class.
An interface is a type similar to a class that only declares the
Interface
signature of the methods without any implementation.
‘Is-a’ abstraction shows type-of or kind-of relation between the
Is-a
objects.
Term Description
A LayoutManager is an interface in Java that designs the display
LayoutManager area of an application based on the type of layout selected by
the user.
Language-Integrated Query (LINQ) is a .NET Framework
LINQ component that provides native data querying capabilities to
.NET languages.
A listener is used in Java to handle the events generated by
Listener
user actions on the components.
Loose coupling means a group of components which can operate
Loose coupling
independent of each other.
Low cohesion is a situation when a single component is assigned
Low cohesion
too many tasks.
Term Description
A message is a set of words, a phrase or statement to convey
Message
something.
A method is a set of steps or instructions, or a procedure to
Method
accomplish something.
Method The method signature consists of a return value, method name,
signature and argument list of the method.
Modules are the result of dividing a problem into smaller units for
Modules
better understanding.
Multilevel When a class derives from another derived class, it is called
inheritance multilevel inheritance.
Multiple When a class derives from more than one base class it is called
inheritance multiple inheritance.
Mutator is a method through which the object can assign the value
Mutator
to a data field.
Term Description
.NET The .NET Framework is a software framework that is primarily
framework designed for Microsoft Windows operating system.
Nested class A class defined inside another class is known as a nested class.
Term Description
Object An object is an instance of a class.
Object-based programming is more or less a limited version of
Object-based
OOP, which has no implicit inheritance, no polymorphism, and
Programming
only a reduced number of available objects.
Object-oriented design is a process of creating a system where
Object-oriented
objects coordinate or interact with each other to accomplish a
Design
task.
Object-oriented Programming (OOP) is a technique that makes
use of objects, which are data structures consisting of
OOP
attributes and behavior along with their interactions, for
designing computer programs.
Operator overloading is a technique used for extending the
Operator
functionality of an existing operator so as to allow them to be
overloading
used with user-defined types.
Overloading is a technique in which a method with the same
Overloading name can have several implementations by changing its
signature.
Overriding is a technique in which a child class can override
Overriding the method of a parent class and change the implementation
of the method to suit its own requirement.
Term Description
A package is a mechanism of grouping related classes
Package
together as one unit.
A pattern is a documented solution to a problem which has
Pattern been used effectively in a similar problem encountered
earlier.
A polymorph is an object that can appear or behave in more
Polymorph
than one form.
Polymorphic A variable that is declared as one type but holds a value of a
variable different type is called a polymorphic variable.
Polymorphism is a technique that allows an entity such a
Polymorphism
variable, a method, or an object to have more than one form.
A private access modifier states that any type or member
Private declared private is accessible only to the code of the same
class.
A protected access modifier states that any type or member
Protected declared protected is accessible to the code of the same class
or to a class derived from that class.
The proxy pattern uses a simple object to depict a complex
Proxy pattern one and provides a placeholder for an object in order to
control access to it.
Pseudo-variable is similar to an invisible receiver that works
Pseudo-variable
inside a method and is normally not declared.
A public access modifier states that any type or member
declared public is accessible to all other classes within the
Public
scope or even outside the scope of the class or package, or
assembly in which it is declared.
Pure virtual
functions An abstract method is known as pure virtual function in C++.
Term Description
Responsibility-driven design (RDD) is a design technique based on
RDD delegation of responsibilities and determination of components
responsible for executing the responsibilities.
Redefinition is a technique in which the name of the methods in
Redefinition parent and child class remains the same but signature of the child
class method differs from that of the parent class.
When the child class includes the functionality of the parent class
Refinement version of the overridden method within its own version, it is
called Refinement.
Reflection is the ability of a program to examine or introspect
Reflection
itself.
When the child class completely overrides the parent class
Replacement
method implementation, it is called Replacement.
Reverse Reverse polymorphism is a technique by which one can undo the
polymorphism substitution done in a polymorphic variable.
Term Description
Sequence diagram is an extension to SSD and is used to show the
specific objects that take part in accomplishing a task. It consists
Sequence
of vertical lines that represent objects and horizontal arrows that
diagram
represent messages passed between the objects in the order in
which they are invoked.
Shadowing is a technique in which a variable or method declared
Shadowing in one scope hides a variable or method with the same name in
another scope.
A singleton pattern is one that allows creation of only one
Singleton
instance of a class and provides a global access point to that
pattern
instance.
Single When a class derives from only one base class, it is called single
inheritance inheritance.
Specialization is a technique in which each object along with the
characteristics inherited from its super class, also exhibits its own
Specialization
special features which help to differentiate it from other objects
belonging to the same category.
Specialization methods are declared in the parent but
implemented in the child and thus serve as an example of reuse
Specialization
of concept. These methods change the behavior of the parent
methods
class to fit the requirement of child class, that is, they are
overridden in the child.
System sequence diagrams (SSD) shows the sequence in which
SSD
the actors generate events and the interaction between them.
A class declared as static cannot be instantiated and its members
Static class
can be accessed directly using the class name.
A method declared static, can be accessed directly using the class
Static method
name without creating object of the class.
Static Static polymorphism is a technique where the method calls and
polymorphism data bindings are fixed at compile time.
A static or class variable is one for which there is only a single
Static variable
copy that is shared by all objects of a class.
Term Description
A template class is similar to a normal class except that it
consists of a more generic type declaration. IT introduces a
Template class
type variable named ‘T’ which can be used anywhere inside
the class.
Template A template function is one that does not have a specific type
function attached to the parameters or even the return type.
Tight coupling means the components are largely dependent
Tight coupling
on each other.
Term Description
Use case Use case diagram describes the functionality of a system and the
diagram users (or actors) that will interact with the system.
User interface User interface documentation describes the look and feel of the
documentation product as specified by the user.
Term Description
Visibility A visibility modifier is used with class, data fields as well as
modifier methods to restrict access to them from outside the class.
Visual Studio is an IDE provided by Microsoft for creating .NET
Visual Studio
based software.
Void is a type which means that the method does not return
Void
anything.
Term Description
Windows Communication Foundation (WCF) is an Application
WCF Programming Interface (API) in .NET that is used for developing
connected and service-oriented applications.
Workflow Foundation (WF) is a Microsoft technology that provides the
user with an API, an in-process workflow engine, and a designer that
WF
can be hosted to implement long-running and complex processes as
workflows within .NET applications.
Windows Presentation Foundation (WPF) is a graphical subsystem in
WPF .NET used for creating rich user interfaces in Windows-based
applications quickly and easily.
Table of Contents
Term Description
An abstract class is a class that can be used only as a base class of
Abstract
some other class. No objects of the class can be created. Contains
class
one or more pure virtual functions.
An access specifier specifies the access rules for members following
Access it until the end of the class or until another access-specifier is
specifier encountered. The three commonly used access specifiers are
public, private, and protected.
Term Description
Class A class is a grouping of objects that have the same properties,
common behavior, and common relationships.
cin An object of istream class. Represents the standard input
stream, which is the keyboard.
const keyword The keyword const can be added to the declaration of an object
to make that object a constant rather than a variable.
Constructor A constructor is a special member function for automatic
initialization of an object.
Container class When an object of a class is declared as a member of another
class, it is called a container class.
Conversion Conversion functions are member functions used to convert
functions objects to or from basic data types and for conversions between
objects of different classes.
Copy A copy constructor for a class X is a constructor that can be
constructor called to copy an object of class X.
cout An object of the ostream class. Represents the standard output
stream, which is the video display.
Term Description
Data type Is used to specify the type of data the variable can store.
Data abstraction is the process of identifying properties and
Data abstraction
methods related to a particular entity as relevant to the
application.
Default A default constructor is a constructor that does not have any
constructor arguments.
delete operator The delete operator frees the memory that was previously
allocated using the new operator at run time.
Destructor A destructor is a member function that is called
automatically when an object is destroyed.
Direct base class A class is called a direct base if it is mentioned in the base-
list of the derived class.
The dot operator is called the class member operator. A
Dot (.) operator member function is associated with a specific object with the
dot operator (the period).
Dynamic binding means that the address of the code in a
Dynamic binding member function invocation is determined at the last
possible moment, based on the dynamic type of the object
at run time.
Most C++ compiler libraries provide functions that allow you
Dynamic memory
to allocate and free data space while the program is
management
executing. This kind of management is called dynamic
memory management.
Term Description
Is also called data hiding, which makes only the specific
Encapsulation
information visible, while the others can be hidden.
Exceptions Are run-time errors that may cause a program to be abruptly
terminated.
Term Description
A friend function is a non-member function that is allowed
Friend function
access to the private part of a class.
Function Function overloading is used to define a set of functions that
overloading are given the same name and perform basically the same
operations, but use different argument lists.
Function The declaration that describes the function's name, its return
prototype value, and the number and types of its parameters.
Term Description
Garbage Is the automatic reclaiming of memory from objects that are
collection no longer in scope.
Term Description
Indirect base A class is called an indirect base if it is the base class of one
class of the classes mentioned in the base-list of the derived class.
Implicitly typed Are variables that are declared and initialized in a single step,
variables using the var keyword in place of the type declaration.
Initialization Is a process of assigning values to variables, arrays, objects,
and so on.
Inheritance Is the process of creating a new class or type based on the
attributes and methods of an existing class or type.
Inline function An inline function is written just like a normal function in the
source file but compiles into inline code instead into a
function.
Interface Is a reference type that contains declarations of the events,
indexers, methods, and properties.
Term Description
Keywords Are reserved words that are separately compiled by the
compiler.
Term Description
Literal Is a static value assigned to variables and constants.
Term Description
Method Is a procedure declared in a class and may be used to
perform operations on class variables.
Method overriding Is a process in which a derived class redefines the inherited
methods of the base class.
Multiple Multiple inheritance is the process of creating a new class
inheritance from more than one base class.
Term Description
new Is a keyword used for instantiation, when specified as an
operator and used for hiding the methods or variables of the
base class that are inherited in the derived class, when
specified as a modifier.
Term Description
Object Is an entity with a unique identity,
state, and behavior.
Object-Oriented Programming (OOP) Is the programming model that uses
objects to design applications and
computer programs.
Operator functions An operator function is a special
member function that overloads an
operator. The operator that has to be
overloaded follows the keyword
operator.
Term Description
Polymorphism Is the ability of objects to behave differently in different
situations.
Property Is a data member that protects private fields of a class by
reading and writing to the field through the get and set
accessors.
protected Is an access modifier that allows only the derived class to
access the members of the base class that are declared
using the protected keyword.
Pure virtual A pure virtual function is a virtual function with the pure
functions specifier in the function declaration and in the class
declaration. It has only a function declaration.
Term Description
Reference A reference provides an alias or an alternate name for an
object.
Term Description
Single inheritance Single inheritance is the process of creating new classes
from an existing base class.
Statements Are a logical grouping of variables, operators, and keywords
that perform a specific task.
Static method Is a method that can be called without creating any objects
of the class.
Static variable Is a special variable that is accessed without using an object
of the class.
Structure Is a value type that can hold values of different data types.
Super class The superclass is the class from which another class inherits
its behavior.
Sub class The class that inherits the properties and methods of
another class is called the subclass.
Term Description
this pointer Whenever a member function is called, the compiler assigns the
address of the object which invoked the function, to the this
pointer. The keyword this gives the address of the object, which
was used to invoke the member function.
throw Is a keyword that allows to programmatically raise exceptions.
try Is a block of code that encloses statements that might generate
exceptions.
Type casting In C++ the term type casting applies to data conversions that are
specified by the programmer.
Type
Is a placeholder for the specified data type.
parameter
Term Description
Variable Is a named location in the computer’s memory that is used to
store a value.
virtual Is a keyword that allows data members to be overridden.
Virtual A virtual function allows derived classes to replace the
function implementation provided by the base class.
Virtual base Any base class that is declared using the keyword virtual is called
class a virtual base class.