NCSE201: Computer Programming with C++ Flashcards

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/48

flashcard set

Earn XP

Description and Tags

Comprehensive vocabulary flashcards covering Units 1 through 5 of the NCSE201 Computer Programming with C++ course, including OOP principles, inheritance, polymorphism, exception handling, and STL.

Last updated 3:31 PM on 6/18/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

49 Terms

1
New cards

C++

A general-purpose programming language developed by Bjarne Stroustrup as an extension of the C programming language, combining procedural, object-oriented, and generic programming.

2
New cards

Class

A blueprint used to create objects that allows developers to model real-world entities.

3
New cards

Object

An instance of a class containing data and functions.

4
New cards

Encapsulation

One of the four pillars of OOP involving the wrapping of data and functions together into a single unit called a class.

5
New cards

Inheritance

One of the four pillars of OOP allowing a new class to acquire properties and behaviors from an existing class.

6
New cards

Polymorphism

One of the four pillars of OOP defined as "one interface, many forms," allowing a single function name or base-class pointer to perform different actions.

7
New cards

Abstraction

One of the four pillars of OOP focused on showing only essential details while hiding underlying complexity.

8
New cards

Using namespace std

A directive that allows direct access to standard library members without the std::std:: prefix.

9
New cards

cout

An object used for displaying output in C++.

10
New cards

cin

An object used for receiving input in C++.

11
New cards

Syntax Error

A violation of language rules, such as a missing semicolon, that prevents compilation.

12
New cards

Runtime Error

An error that occurs during program execution, such as division by zero (x/yx / y where y=0y = 0).

13
New cards

Logical Error

An error where the program executes successfully but produces incorrect results, such as using area=length+breadth\text{area} = \text{length} + \text{breadth} instead of area=length×breadth\text{area} = \text{length} \times \text{breadth}.

14
New cards

Data Binding

The association of data with methods inside a class.

15
New cards

Method Binding

The process of connecting a function call to the actual function code.

16
New cards

Public

An access specifier that makes class members accessible everywhere.

17
New cards

Private

An access specifier that makes class members accessible only inside the same class.

18
New cards

Protected

An access specifier that makes class members accessible inside the same class and its derived classes.

19
New cards

Base Class

The existing class being inherited from; also called a Parent Class or Super Class.

20
New cards

Derived Class

The class that inherits from another class; also called a Child Class or Sub Class.

21
New cards

IS-A Relationship

A relationship meaning a derived class is a specialized form of a base class, such as "Car IS-A Vehicle."

22
New cards

Single Inheritance

A type of inheritance where one child class inherits from exactly one parent class.

23
New cards

Multilevel Inheritance

An inheritance chain where a class inherits from a derived class, such as Animal \rightarrow Mammal \rightarrow Dog.

24
New cards

Hierarchical Inheritance

A type of inheritance where one parent class has multiple child classes.

25
New cards

Multiple Inheritance

A type where one child class inherits from multiple parent classes, such as a Professor inheriting from both Teacher and Researcher.

26
New cards

Hybrid Inheritance

A combination of two or more inheritance types, such as Hierarchical plus Multiple inheritance.

27
New cards

Static Polymorphism

Polymorphism resolved during compilation, also known as compile-time polymorphism or early binding (e.g., function overloading).

28
New cards

Dynamic Polymorphism

Polymorphism resolved during execution, also known as runtime polymorphism or late binding (e.g., virtual functions).

29
New cards

Function Overloading

A feature where multiple functions can have the same name if their parameter lists differ.

30
New cards

Operator Overloading

A feature that allows operators to work with user-defined objects, such as using ++ to add complex numbers.

31
New cards

Method Overriding

Occurs when a derived class provides its own specific implementation of a method already present in the base class.

32
New cards

Virtual Functions

Functions that allow C++ to decide at runtime which version of a function should be executed based on the object type.

33
New cards

Pure Virtual Function

A function with no implementation in the base class, defined using the syntax virtual void function()=0virtual\text{ void function()} = 0, enforcing implementation in derived classes.

34
New cards

Abstract Class

A class containing at least one pure virtual function that cannot be instantiated and serves as a common interface.

35
New cards

Exception Handling

A mechanism used to handle runtime errors gracefully to prevent sudden program crashes.

36
New cards

try

A keyword used to define a block of code that may generate exceptions.

37
New cards

throw

A keyword used to generate an exception when an error is detected, transferring control to a catch block.

38
New cards

catch

A keyword used to define a block of code that handles an exception of a matching type.

39
New cards

Catch-All Handler

A handler using the syntax catch(...)catch(...) that can catch any type of exception.

40
New cards

Re-throwing

The process where a catch block passes its caught exception to another handler using the throw;throw; statement.

41
New cards

Templates

A feature used to write generic code where one implementation can work with multiple data types.

42
New cards

Generic Programming

A programming paradigm focused on writing algorithms and data structures independent of specific data types.

43
New cards

Template Specialization

Creating a specific version of a template for a particular data type that requires different behavior than the generic version.

44
New cards

STL

Standard Template Library; a collection of reusable template-based data structures and algorithms.

45
New cards

Iterators

Objects in the STL that behave like pointers and are used to traverse through containers.

46
New cards

Vector

An STL container implemented as a dynamic array providing fast random access.

47
New cards

List

An STL container implemented as a doubly linked list providing fast insertion and deletion.

48
New cards

Map

An STL associative container that stores unique key-value pairs.

49
New cards

Multimap

An STL associative container that allows multiple values per key (duplicate keys).