C++ Jargon Buster
Abstraction – Abstraction is the process of separating ideas from specific instances of those ideas at work. Computational structures are defined by their meanings (semantics), while hiding away the details of how they work. Abstraction is applied in the process of identifying software artifacts (objects) to model the problem domain. It is the process of reducing these objects to their essence such that only the necessary elements are represented.
Application Package Interface – An application programming interface (API) is a particular set of rules (‘code’) and specifications that software programs can follow to communicate with each other. It serves as an interface between different software programs and facilitates their interaction, similar to the way the user interface facilitates interaction between humans and computers. View tutorial for keyword
Array – An array is a composite data type that stores a collection of values. These values can then be referenced by an index number. The index number is the location of the data element in the array. Each stored value so indexed is referred to as an array element. Each element is a discrete data value. An element can contain most anything, including another array. View tutorial for keyword
Assertions – An assertion is a predicate (a true–false statement) placed in a program to indicate that the developer thinks that the predicate is always true at that place. If an assertion evaluates to false at run-time, an assertion failure results, which typically causes execution to abort.
Base Class –Is a class in an OOP language, from which other classes may be derived. It allows the creation of other classes that can reuse the code implicitly inherited from the base class this does not include constructors and destructors. A programmer can extend base class functionality by adding or overriding members relevant to the derived class. View tutorial for keyword
Binary Operators – A binary operator is an operator that operates on two operands and manipulates them to return a result e.g. I + c. Operators are represented by special characters or by keywords and provide an easy way to compare numerical values or character strings e.g. ==, && etc… View tutorial for keyword
Bitwise Operations – Operates on one or more bit patterns applying a task to each of the bits e.g. shift right >>. It is a fast, primitive action directly supported by the processor, and is used to manipulate values for comparisons and calculations. On simple low-cost processors, typically, bitwise operations are substantially faster than division, several times faster than multiplication, and sometimes significantly faster than addition. View tutorial for keyword
Checked Exceptions – A checked exception is an exception that is typically a user error or a problem that cannot be foreseen by the programmer. These exceptions cannot simply be ignored at the time of compilation.View tutorial for keyword
Class – In object-oriented programming, a class is an extensible program-code-template for creating objects, providing initial values for state (member variables) and implementations of behaviour (member functions, methods). In many languages, the class name is used as the name for the class (the template itself), When an object is created by a constructor of the class, the resulting object is called an instance of the class, and the member variables specific to the object are called instance variables, to contrast with the class variables shared across the class. View tutorial for keyword
Command line – An application that takes input and displays output at a command line console with access to three basic data streams: standard input, standard output and standard error. View tutorial for keyword
Compilation – A compiler is a computer program that transforms human readable source code of another computer program into the machine readable code that a CPU can execute. A compiler is likely to perform many or all of the following operations: lexical analysis, preprocessing, parsing, semantic analysis (Syntax-directed translation), code generation, and code optimization. View tutorial for keyword
Constructor – A special method on a class or struct that initializes the objects of that type. It prepares the new object for use, often accepting arguments that the constructor uses to set required member variables. Constructors often have the same name as the declaring class. View tutorial for keyword
Derived Class – A class that uses inheritance to gain, augment, or modify the behaviour and data of another ‘base’ class. Derived classes are used for augmenting the functionality of base class by adding or modifying the properties and methods to suit the requirements of the specialization necessary for derived class. View tutorial for keyword
Destructor – The purpose of the destructor is to release or relinquish all resources such as memory, close any open files etc… when an object of this class is destroyed. Typically such resources will have been acquired by the class constructor. A destructor is automatically invoked when the object is destroyed. It can happen when its lifetime is bound to scope and the execution leaves the scope, when it is embedded into another object whose lifetime ends, or when it was allocated dynamically and is released explicitly. View tutorial for keyword
Encapsulation – Encapsulation is the process of providing access to an object only through it’s messages while keeping the details private. Encapsulation controls the use of a class. Object-oriented programming languages rely heavily on encapsulation to create high-level objects. Encapsulation is closely related to abstraction and information hiding. View tutorial for keyword
Enums – The enum keyword is used to declare an enumeration, a distinct type that consists of a set of named constants called the enumerator list. The use of enums brings the advantage of type safety by assigning the numeric variable in a program with meaningful enum values. View tutorial for keyword
Event – An event is an action or occurrence detected by the program that may be handled by the program. Typically events are handled synchronously with the program flow, that is, the program has one or more dedicated places where events are handled. Typical sources of events include the user e.g. mouse move event.
Explicit Casting – A user-defined cast that a user explicitly invokes with the CAST AS keyword or cast operator. Cast operations can be performed for numeric conversions in which the destination type is of lesser precision or a smaller range. It is also used for conversion from base class instance to derived class. View tutorial for keyword
Expression – An expression is a combination of explicit values, constants, variables, operators, and functions that are interpreted according to the particular rules of precedence and of association for a particular programming language, which computes and then produces another value E.g. Assignment X = 5. View tutorial for keyword
Field – A data member of a class or struct that is accessed directly. Fields are used to store data that must be accessible to multiple methods of a class and available throughout the lifetime of an object. Fields enable a class or struct to encapsulate the data with options to specify its accessibility at multiple levels. View tutorial for keyword
Function – In C++, a function is a group of statements that is given a name, and which can be called from some point of the program.View tutorial for keyword
Garbage Collection – Is a form of automatic memory management. The garbage collector, or just collector, attempts to reclaim garbage, or memory occupied by objects that are no longer in use by the program. View tutorial for keyword
Generics – Generics allow you to define a class and or method that are defined with a type parameter. When client code instantiates the type, it specifies a particular type as an argument. View tutorial for keyword
Handler – A function or method containing program statements that are executed in response to an event. An event handler typically is a software routine that processes actions such as keystrokes and mouse movements. With Web sites, event handlers make Web content dynamic.
Header – The header file causes the contents of a second file to be inserted into the original file. It ensures that everyone uses the same version of a data layout definition or procedural code throughout a program.
Heap – The heap or managed heap is a data structure in memory where all objects—reference types—are stored. An area of memory reserved for data that is created at runtime — that is, when the program actually executes.
Integrated Development Environment – Integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of a source code editor, build automation tools and a debugger. View tutorial for keyword
Immutable Type – A type whose instance data, fields and properties, does not change after the instance is created. Most value types are immutable. Immutable types are designed for efficient memory management and better speed, which makes them suitable for objects with synchronization requirements.
Implicit Casting – The abilty of some compilers to automatically insert typeconversion functions where an expression of one type is used in a context where another type is expected. A common example is coercion of integers to reals so that an expression like sin(1) is compiled as sin(integerToReal(1)) where sin is of type Real ->Real. View tutorial for keyword
Inheritance – C# supports inheritance, so a class that derives from another class, known as the base class, inherits the same methods and properties. Inheritance involves base classes and derived classes. It is a mechanism for code reuse and to allow independent extensions of the original software via public classes and interfaces. View tutorial for keyword
Interface – In object-oriented languages, the term interface is often used to define an abstract type that contains no data or code, but defines behaviours as method signatures. A class having code and data for all the methods corresponding to that interface is said to implement that interface. Furthermore, a class can implement multiple interfaces, and hence can be of different types at the same time.
Iteration – You can create loops by using the iteration statements. Iteration statements cause embedded statements to be executed a number of times, subject to the loop-termination criteria. One cycle is called an iteration and sometimes if the code is the same and it calls itself it can be called recursion. View tutorial for keyword
Keyword – Names reserved by the compiler that coders are not allowed to use as identifiers. Keywords are also already identifiers themselves. Keywords can be commands or parameters. Every programming language has a set of keywords that cannot be used as variable names. Keywords are sometimes called reserved names.
Member – A field, property, method, or event declared on a class.View tutorial for keyword
Method – In object-oriented programming, a procedure that is executed when an object receives a message. A method is really the same as a procedure, function, or routine in procedural programming languages. The only difference is that in object-oriented programming, a method is always associated with a class. View tutorial for keyword
Mutable Type – A type whose instance data, fields and properties, can be changed after the instance is created. Most Reference Types are mutable. Mutable types are used in parallel applications, where the objects of mutable value type are maintained in the stack by the Common Language Runtime (CLR). This provides some optimization, which makes it faster than heap-allocated objects.
Nesting – Embedding one object in another object of the same type. Nesting is quite common in programming, where different logic structures sequence, selection and loop) are combined (i.e., nested in one another). A nested type has access to all of the members that are accessible to its containing type. It can access private and protected members of the containing type, including any inherited protected members. View tutorial for keyword
Object – An object is a location in memory having a value and possibly referenced by an identifier. An object can be a variable, function, or data structure. In the object-oriented programming paradigm, “object” refers to a particular instance of a class where the object can be a combination of variables, functions, and data structures. An object has state (data) and behaviour (code). Objects correspond to things found in the real world. So for example, a graphics program will have objects such as circle, square, menu. View tutorial for keyword
Operator – In general, operators help in building expressions that form the primary means to work with data stored in constants and variables. Many programs and programming languages recognize other operators that allow you to manipulate numbers and text in more sophisticated ways. View tutorial for keyword
Parameter – A parameter is a special kind of variable, used in a subroutine to refer to one of the pieces of data provided as input to the subroutine. These pieces of data are called arguments. An ordered list of parameters is usually included in the definition of a subroutine, so that, each time the subroutine is called, its arguments for that call can be assigned to the corresponding parameters. View tutorial for keyword
Pointer – A pointer is a variable that holds a memory address. This address is the location of another object in memory. If one variable contains the address of another variable, the first variable is said to point to the second. A pointer declaration consists of a base type, an *, and the variable name. View tutorial for keyword
Polymorphism – A feature of a programming language that allows routines to use variables of different types at different times. View tutorial for keyword
Reference – A reference variable provides an alias (alternative name) for a previously defined variable. View tutorial for keyword
Reference Type – Reference types represent the ‘major entities’ in your OO design, such as classes and interfaces. A reference type refers to an object in some external memory space. This is in contrast to value types that are stored where they are created.
Static – Use the static modifier to declare a static member, which belongs to the type itself rather than to a specific object. A static member of a class can be used to keep track of the instances created and maintain common data to be shared among all instances. It can be used in helper and utility classes, which usually contain generic methods that contain abstractions of pure logic. View tutorial for keyword
Structure – Structure is a collection of variable types grouped together. You can refer to a structure as a single variable, and to its parts as members of that variable by using the dot (.) operator.
Thread – The threads of a computer program alllow the program to execute sequential actions or many actions at once. Each thread in a program identifies a process that runs when the program asks it to e.g. program asks a search process to occur in the background.
Unary Operators – Unary Operators has only one operand. The operation takes place using a single operand e.g. i++ View tutorial for keyword
Variable – Word that stores a value. Storage location that holds a value. Type and name of variable must be declared in a statement. Must be explicitly declared before use. Uses CamelCase notation. View tutorial for keyword