C++ Tutorial Index

C++ Tutorial C++ History C++ Installation C++ First Program C++ cin and cout C++ Data type C++ Variable C++ operator C++ Keywords

C++ Control Statements

C++ If C++ Nested if C++ If-else C++ If-else-if C++ Switch C++ Break C++ Continue C++ Goto C++ For loop C++ While loop C++ Do while loop

C++ Functions

C++ Call by Value C++ Call by Reference C++ Recursion Function C++ Inline function C++ Friend function

C++ Arrays

Single dimension array Two dimension array

C++ Strings

C++ Strings

C++ Inheritance

C++ Inheritance Single level Inheritance Multilevel Inheritance Multiple Inheritance Hierarchical Inheritance Hybrid Inheritance

C++ Polymorphism

C++ Polymorphism C++ Overloading C++ Overriding C++ Virtual Function

C++ Pointers

C++ Pointers C++ this pointer

C++ Exception Handling

C++ Exception Handling

C++ Constructors

C++ Constructors Default Constructor Parameterize Constructor Copy constructor Constructor Overloading Destructor

C++ File Handling

C++ File Handling C++ Writing to file C++ Reading file C++ Close file

Miscellaneous

C Vs C++ C++ Comments C++ Data Abstraction C++ Identifier C++ Memory Management C++ Storage Classes C++ Void Pointer C++ Array To Function C++ Expressions C++ Features C++ Interfaces C++ Encapsulation std::min in C++ External merge sort in C++ Remove duplicates from sorted array in C++ Precision of floating point numbers Using these functions floor(), ceil(), trunc(), round() and setprecision() in C++ C++ References C++ Friend Functions C++ Mutable keyword Unary Operators in C++ Initialize Array of objects with parameterized constructors in C++ Differences between #define & const in C/C++ C++ Program to Implement Shell Sort C++ Program to Implement Merge Sort Storage Classes in C Vector resize() in C++ Passing by Reference Vs. Passing by the pointer in C++ Free vs delete() in C++ goto statement in C and C++ C++ program to read string using cin.getline() C++ String Concatenation Heap Sort in C++ Swap numbers in C++ Input Iterators in C++ Fibonacci Series in C++ C ++ Program: Alphabet Triangle and Number Triangle C++ Program: Matrix Multiplication C++ Program to Print Fibonacci Triangle Stack in C++ Maps in C++ Queue in C++ C++ Bitset C++ Algorithms Priority Queue in C++ C++ Multimap C++ Deque Function Pointer in C++ Sizeof() Operators in C++ C++ array of Pointers free() Vs delete in C Timsort Implementation Using C++ CPP Templates C++ Aggregation C++ Enumeration C++ Math Functions C++ Object Class C++ Queue Initialize Vector in C++ Vector in C++ C++ STL Components Function overloading in C++ C++ Maximum Index Problem C++ find missing in the second array C++ Program to find the product array puzzle C++ Program To Find Largest Subarray With 0 Sum C++ Program To Move All Zeros To The End Of The Array C++ Program to find the element that occurs once C++ Program to find the largest number formed from an array Constructor Vs Destructor C++ Namespaces C++ OOPs Concept C++ Static C++ Structs C++ Try-Catch C++ User Defined Exceptions C++ Virtual Destructor C++ vs C# Malloc() and new in C++ Palindrome Number Program in C++ Snake Code in C++ Splitting a string in C++ Structure Vs Class in C++ Virtual Function Vs Pure Virtual Function C++ Bidirectional Iterators C++ Forward Iterators C++ Iterators C++ Output Iterators C++ Range-based For Loop Converting string into integer in C++ LCM Program in C++ Type conversion in C++ Add two numbers using the function in C++ Advantage and disadvantage friend function C++ Armstrong Number Program in C++ ATM machine program in C++ using functions Binary to Decimal in C++ Bit Manipulation in C++ C++ Constructor C++ Dijkstra Algorithm Using the Priority Queue C++ int into String C++ Signal Handling Decimal to Binary in C++ Decimal to Hexadecimal in C++ Decimal to Octal in C++ Factorial Program in C++ Function in C++ Hexadecimal to Decimal in C++ Octal to Decimal in C++ Reverse a Number in C++ Structure Vs Class in C++ C++ Forward Iterators C++ Output Iterators C++ Prime number program Char Array to String in C++ Constructor Overloading in C++ Default arguments in C++ Different Ways to Compare Strings in C++ Dynamic Binding in C++ Program to convert infix to postfix expression in C++ SET Data Structure in C++ Upcasting and Downcasting in C++ Reverse an Array in C++ Fast Input and Output in C++ Delete Operator in C++ Copy elision in C++ C++ Date and Time C++ Bitwise XOR Operator Array of sets in C++ Binary Operator Overloading in C++ Binary Search in C++ Implementing the sets without C++ STL containers Scope Resolution Operator in C++ Smart pointers in C++ Types of polymorphism in C++ Exception Handling in C++ vs Java Const Keyword in C++ Type Casting in C++ Static keyword in C++ vs Java Inheritance in C++ vs Java How to concatenate two strings in C++ Programs to Print Pyramid Patterns in C++ swap() function in C++ Structure of C++ Program Stringstream in C++ and its applications rand() and srand() in C / C++ C++ Ternary Operator C++ Scope of Variables While Loop Examples in C++ Star pattern in C++ using For Loops For Loop Examples in C++ Do-While Loop Examples in C++ Top 5 IDEs for C++ That You Should Try Once Assertions in C/C++ C++ Convert Int to String Continue in C++ While loop Diamond Pattern in C++ using For Loop How to Reverse a String in C++ using Do-While Loop How to Reverse a String in C++ using For Loop How to Reverse a String in C++ using While Loop Infinite loop in C++ Loops in C++ Returning Multiple Values from a Function using Tuple and Pair in C++ wcscpy(), wcslen(), wcscmp() Functions in C++ Auto keyword in C++ C++ 11 vs C++ 14 vs C++ 17 C++ STL (Standard Template Library) Differences Between C Structures and C++ Structures Divide by Zero Exception in C++ Dynamic Constructor in C++ Dynamic Memory Allocation in C++ Find the Size of Array in C/C++ without using sizeof() function Floating Point Operations and Associativity in C, C++ and Java Hello World Program in C++ How to create a table in C++ How to Setup Environment for C++ Programming on Mac Implementation of a Falling Matrix in C++ Message Passing in C++ Pointer to Object in C++ Templates in C++ vs Generics in Java Ways to Copy a Vector in C++ What does Buffer Flush mean in C++ sort() function in C++ Structure Sorting (By Multiple Rules) in C++ Similarities between C++ and Java std::distance in C++ Array program in C++ C++ Tricks for Competitive Programming Desired Capabilities in Selenium Web Driver in C++ Socket Programming in C++ Template Specialization in C++ Classes and Objects in C++ Convex hull Algorithm in C++ DES in C++ C++ vardiac() function Difference between Two Sets in C++ Difference between Exit and Return Structured Binding in C++ Differences between Local and Global Variable Bitwise Operator vs Logical Operator Difference between OOP and POP in C++ Fork in C++ Functors in C++ How to call a void function in C++ How to create a directory or folder in C/C++ How to create a library in C++ How to create a stack in C++ How to create the Processes with Fork in C++ How to Handle Divide by Zero Exception in C++ Lambda Expression in C++ Pattern programs in C++ Roadmap to C++ Programming Substring in C++ Virtual base class in C++ Bits stdc++.h in C++ Top 14 Best Free C++ IDE (Editor & Compiler) for Windows in 2022 Bitmasking in C++ Auto Keyword in C++ Features of OOPS in C++ Hospital Management Project in C++ How to Declare Unordered Sets in C++ How to Sort an Array in C++ Include Guards in C++ Iostream in C++ Method overriding in C++ How to run program in turbo c++ How to Use Getline in C++ Leap Year Program in C++ Naming Convention in C++ New Operator in C++ Nullptr in C++ Object Slicing in C++ Principles of Object-Oriented Programming in C++ Processing strings using std string stream in C++ Pure Virtual Function in C++ With Example Program Random Number Generator in C++ Singleton Design Pattern in C++ Size_t Data Type in C++ Skyline Problem in C++ System() function in C++ Web Development in C++ Data Hiding in C++ Difference between exit() and _Exit() in C++ Hashing in C++ Object in C++ Sum of all Elements between k1’th and k2’th Smallest Elements Virtual class in C++ Vector Size in C++ Top best IDEs for C/C++ Developers in 2022 Tensorflow in C++ Sliding Window Technique in C++ Reverse String Word-Wise in C++ Returning a Function Pointer from a Function in C/C++ RTTI in C++ Pthreads or POSIX Threads in C++ Reserved Keywords in C++ Passing a Vector to a function in C++ 10 Best C and C++ Books for Beginners & Advanced Programmers Add two numbers represented by two arrays in C++ Array of Object in C++ C++ Program For FCFS Containership in C++ Counting Frequencies of Array Elements in C++ Decltype type Specifier in C++ Dynamic _Cast in C++ Difference between int main() and int main(void) in C/C++ Depth First Search Program to Traverse a Graph in C++ Features and Use Of Pointers in C/C++ Fread Function in C++ Programming Fscanf Function in The C++ Functions in C++ With Types and Examples Gmtime Function in C/C++ How is Multiset Implemented in C++ How to Build a Program in C++ How to Declare a 2d Array Dynamically in C++ inheritance Program in C++ int Max and int Min in C/C++ is It Fine to Write Void Main Or Main in C/C++ How to create a button in C++ abs() function in C++ Compile Time Polymorphism in C++ Division in C++ Factorial of a Number in C++ using while Loop Multiset in C++ 4 Pillars of OOPs Approach in C++ Backtracking Time Complexity in C++ C++ Global Variable C++ Pipe Tutorial Observer Design Pattern in C++ Private Inheritance in C++ Pthread in C++ Parameters SDL library in C++ with Examples Pointers in C++ Abstract Factory Design Pattern in C++ Ascending order in C++ How the value is passed in C++ Call by Pointer in C++ Constexpr in C++ Deadlock in C++ Design Patterns in C++ Factory Method for Designing Pattern in C++ How to calculate size of string in C++ Name Mangling and extern in C++ Preventing Object Copy in C++ Program that produces different results in C and C++ Quick Sort in C++ Single Handling in C++ Type difference of Character literals in C VS C++ Use of Inheritance in C++ User-defined literals in C++ Vector methods in C++ Void * in C and C++ Zombie and Orphan Process in C++ Isprint() in C++ List and Vector in C++ List iterators in C++ Merging Two Vectors in C++ Sleep function in C++ Stoi function in C++ String erase() in C++ String Trim in C++ When should we write own Assignment operator in C++ C++ tcp client server example C++ tcp server example Early Binding and Late Binding in C++ Factory Design Pattern in C++ Fisher-Yates shuffle algorithm in C++ For Auto in C++ Group anagrams in C++ How to convert binary string to int in C++ How to convert string to float in C++ How to remove space from string in C++ How to use pair in C++ How to use the string find() in C++ Dynamic Casting in C++ 2D Vector Initialization in C++ C++ GUI Visual Studio C++ IPC C++ Macro Function Example C++ Permutation Overloading Stream Insertion in C++ Overloading array Index operator in C++ Operators that cannot be overloaded in C++ Operator overloading in C++ isprint() function in c++ Is_trivial function in C++ Is assignment operator Inherited in C++ div() function in C++ Default Assignment Operator and References in C++ Copy Constructor vs Assignment Operator in C++ Conversion Operator in C++ Array sum in C++ STL C++ Define Macro C++ Design C++ Factory Pattern TCP Client Server Example in C++ Convert String to Uppercase in C++ exit() and _Exit() in C and C++ Initializer list in C++ Iterator invalidation in C++ Lower bound in C++ Modulus of Two float numbers or double number Pass by value in C++ Set insert function in C++ Std partition_point in C++ Unary Operator Overloading in C++ Using Default Arguments with Virtual Functions Virtual Functions and Runtime Polymorphism What is endl in C++ What is Unary Operator Overloading in C++ Which operators cannot be overloaded in C++ C++ Program to Divide the String Into N equal Parts Gray Code to Binary Code in C++ How to get the value of pi in C++ Multimap value_comp() function in C++ Vector of Vectors in C++ Naïve Bayes Algorithm in C++ Minimum Cost Path Problem in C++ 10 C++ Programming Tricks You Should Know btowc() function in C++ forward_list::cend() in C++ Unordered_multimap max_load_factor() function in C++ Cpp_int in c++ Dynamic Objects in C++ FLOCK() FUNCTION IN C++ Generate Random Double Numbers in C++ How to Assign Infinity to a Number in C++ Jump statements in C++ Multipath inheritance in C++ Out of Range Exception in C++ Size of Class in C++ Size of string in C++ std::binary_negate in c++ Thread_local in C++ Tokenizing a String in C++ Ancestors of a Node in Binary Search Tree C++ program for Double to String Conversion C++ Program to Demonstrate Use of Formatting Flags on Float Output Clamp in C++ K-Dimensional Tree in C++ Mutable Lambda in C++ Power Set in C++ Program to Find Sum of Geometric Progression Std::Back_inserter in C++ Strpbrk() function in C++ Size of int in C++ TYPES OF MANIPULATORS IN C++ Double colon in C++ How to sort vector in C++ How to use Setprecision in C++ How to write a Vector in C++ Insertion in Splay Tree in C++ Merge Sort Algorithm in C++ Printing a Character using ASCII value in C++ Regex in C++ Size of Data Types in C++ Sqrtf() function in C++ Static Casting in C++ Using Range in Switch Case in C++ wcstoimax() and wcstoumax() function in C++ What is float in C++ What is the Diamond Problem in C++ Best way to learn C++ ios setstate() function in C++ Nested Namespace in C++ Single Inheritance in C++ std::fixed, std::scientific, std::hexfloat, std::defaultfloat in C++ StringStream in C++ for Decimal to Hexadecimal and back The OFFSETOF() macro in C++ Difference between std::next and std::advance in C++ Hiding of all overloaded methods with same name in base class in C++ C++ program to concatenate two strings using operator overloading Difference between array::fill() and array::swap() in C++ Difference between Friend Function and Virtual Function in C++ Semaphores in C++ Seekg in C++ UDP server- client implementattion in C++ What is long long in C++ CSV file management using C++ Toggle bits of a number except first and last bits in C++ Trailing Return Type C++ 11 Binary search implementation in C++ Different Versions of C++ What is Cascading in C++ Background Colour in C++ BOOL DATATYPE IN C++ BIT VECTORS IN C++ Literals in C++ Application of pointer in C++ Index with minimum sum of prefix and suffix sums in an array in C++ Maximum sum Bi-tonic sub-sequence in C++ std::optional in C++ C/C++ program for triangular matchstick number COUT COMMAND IN C++ LANGUAGE Adjacency matrix program in C++ language Difference between Null String and Empty String in C++ Character data type in c++ Constructors in Inheritance C++ Comma Operator Overloading in C++ Structure and Class in C++ Template Definition in C++ Tree Data Structure in C++ Typename in C++ C++ program to implement the bin packing algorithm How to merge multiple std::sets into a single std::set in C++? Stack Clear C++ C++ Friend Class Seekg in C++ Semaphores in C++ C++ Exceptions Difference Between C and C++ Double-linked list program in C++ Color Code in C++ CRC Program in C++ Anti-Clockwise spiral traversal of a binary tree in C++ Advantages of OOP in C++ Cryptarithmetic Puzzle in C++ Angular sweep algorithm in C++

Reserved Keywords in C++

What are reserved keywords in C++?

There are a few keywords that cannot be used as identifiers as those words are reserved for some other purposes, such keywords are called reserved keywords.

Here is the list of reserved keywords in c++:

NOTE: All the keywords in c++ are written in lowercase letters.

autoboolbreakCasecatchcharclass
constcontinuedoubleDefaultdeleteelseenum
explicitfriendfloatForintlongmutable
newoperatorprivateProtectedpublicregisterreturn
structswitchshortSizeofstaticthistypedef
throwtruetryUnionvirtualvoidwhile

Now let's discuss these keywords in detail:

  • Auto: when we use the auto keyword before a variable, we don't need to mention any data type for the variable. This auto variable will set the data type according to the entered value.

Example:

// C++ code to demonstrate the use of auto keywords.
#include <bits/stdc++.h>
using namespace std;
int main(){
int num = 10;
string firm = "example";




// Auto keyword is used to set the variable data type automatically.
auto a = 10;
auto e = "Firm";
}

Explanation:

This example demonstrates the use of auto keywords in c++ reserved keywords. In this example, we have declared two variables with interger and string data type. Then we declared other two data types with the auto keyword. In case 2, the auto keyword will automatically assign the variable's data type according to the value. In both cases, we will not get any errors.

  • Bool: The bool keyword is used to define the variable of Boolean data type, meaning it will only take true or false.

Example:

// C++ code to demonstrate the use of the bool keyword.
#include <bits/stdc++.h>
using namespace std;
int main(){
bool a=true;
cout<<a;




}

Output:

Reserved Keywords in C++

Explanation:

This example demonstrates the use of the bool keyword in c++. In the code, we have declared a bool variable a and assigned true to it. As it is a Boolean variable, it will only take true or false. Then, when we have printed the variable a, we will get the output as 1 as the bool expression is true. If the Boolean expression is false, then the output will be 0.

  • Break: Break is a keyword used in the loop. When the break statement is executed in the loop, the whole loop gets terminated.

Example:

// C++ code to demonstrate the use of break keywords.
#include <bits/stdc++.h>
using namespace std;
int main(){
	//for loop is used to show how the loop acts when the break statement is executed
for(int i=0;i<5;i++){
	if(i==3){
		//if the i value is 3, then the break statement will be executed and will break the loop
		break;
	}
	else{
		cout<<i<<endl;
	}
}
}

Output:

Reserved Keywords in C++

Explanation:

The above code is used to demonstrate how the break keyword will work. In the code, we have used for loop to show how the loop break when the break statement executes. In the for loop, we have given a condition that when the i value becomes 5, the loop should be terminated. We used the if statement inside the for loop to execute the break keyword. When the value of i becomes 3, then the break statement will execute. We can see in the output that the only 0 1 2 values are printed, but as loop gets break at i=3, so 3 will not be printed.

  • Catch: This keyword is used to catch a specific error that has occurred. The catch statement must be used with the throw statement.

Example:

// Program to demonstrate the use of a catch statement.
#include <iostream>
using namespace std;


int main() {
	try {
int age ;
cin>>age;
if (age >= 18) {
	cout << "Access granted - you are old enough.";
} else {
	throw (age);
}
}
catch (int myNum) {
cout << "Access denied - You must be at least 18 years old.\n";
cout << "Age is: " << myNum;
}


    return 0;
}

Output:

Reserved Keywords in C++

Explanation:

The above code is used to demonstrate the use of catch statements in C++. In the above code, we have declared a try block that will test the block of code for the errors. If the condition is not satisfied, the throw statement will execute, sending the signal to the catch statement to execute then the catch block statement will execute.

  • Case: The case is a keyword used with the switch statement. In the switch statement, we write different cases to be performed when a specific value is reached, so to define those cases, we use the case keyword.

Example:

// Program to demonstrate the use of case statements. 
 #include <iostream> 
using namespace std;
int main() { 
char oper; float num1, num2;
 cout << "Enter an operator (+, -, *, /): ";
 cin >> oper;
 cout << "Enter two numbers: " << endl;
 cin >> num1 >> num2;
switch (oper) {
    case '+':
        cout << num1 << " + " << num2 << " = " << num1 + num2;
        break;
    case '-':
        cout << num1 << " - " << num2 << " = " << num1 - num2;
        break;
    case '*':
        cout << num1 << " * " << num2 << " = " << num1 * num2;
        break;
    case '/':
        cout << num1 << " / " << num2 << " = " << num1 / num2;
        break;
    default:
        // operator is doesn't match any case constant (+, -, *, /)
        cout << "Error! The operator is not correct";
        break;
}


return 0;


}

Output:

Reserved Keywords in C++

Explanation:

The above code demonstrates the use of case keywords in c++. We have built a calculator in the above code using the switch and case keywords. In the code, we have taken the operator from the user. We have given the operator as a parameter to the switch statement. When a particular operator is entered that is present in the case statement, then the statement in the specific case will be executed. In the output, we can see that we have given * as the operator. So now the case with the * operator will execute, which is multiplication.

  • Char: The char is a data type that is given to a variable. The variable with char data type will take only one character as the input.

Example:

// Program to demonstrate the use of char statement.
 #include <iostream>
using namespace std;
int main() {
	//declaring a variable as a char data type
char a;
cin>>a;
cout<<a;
return 0;
}

Output:

Reserved Keywords in C++

Explanation:

The above code demonstrates the use of the char keyword in c++. We have declared a character type variable in the code using the char keyword. We have taken the input from the user and printed the output using the cout statement.

  • Class: Class is a keyword used to declare a class in the C++ program.

Example:

// Program to demonstrate the use of the class statement.
#include <bits/stdc++.h>


using namespace std;
//Creating a class using the class keyword.


class student{
public:
	//Creating a function in the class
  void display(){
		cout<<"Hi from student class";


  }
};


int main(){
	//creating an object for the class
  student x;
//calling the display function using the object.
  x.display();
  return 0;
}

Output:

Reserved Keywords in C++

Explanation:

The above code is written to demonstrate the use of the class statement in c++. We created a class with a function display in the above code. We have created the class using the class keyword. In the main function, we created an object for the class and used the object. We have called the function member using objects.

  • Const: The const is a keyword in C++. It defines a variable whose value will not change in the program throughout the execution.

Example:

// Program to demonstrate the use of const statement.
#include <bits/stdc++.h>


using namespace std;




int main(){
  //creating a constant variable.
	const int a;
  //trying to change the value of the constant variable.
  for(int i=0;i<5;i++){
    a=a+1;
    cout<<a;
    
  }
}

Explanation:

The above code is used to demonstrate the use of the const keyword. In the above code, we have created a variable a and set it as a constant value. An error will occur when we try to change a value using the for loop. This is because the value a is set to a constant value using the const keyword. This keyword will not change the value throughout the program.

  • Continue: This statement is used with the loop. When this statement is executed, the control is directly sent to the start of the loop without executing the statement below the continue statement.
// Program to demonstrate the use of the continue statement.
//To use the input and output statements, we need to use the iostream header files


#include <iostream>
using namespace std;


int main() {
    int number;
    int sum = 0;


    // nested for loops


    for (int i = 1; i <= 3; i++) {


        for (int j = 1; j <= 3; j++) {
            if (j == 2) {
//If the j value will become 2, then the continue statement will execute.
                continue;
            }
            cout << "i = " << i << ", j = " << j << endl;
        }
    }


    return 0;
}

Output:

Reserved Keywords in C++

Explanation:

The above code is written to demonstrate the continue keyword in c++. We used the nested loop in the above code to show how the continue statement works. In the second loop, when the j value becomes 2, the continue statement will execute and send the control to the start of the loop. Due to this, we can observe in the output that the j values will only be 1 and 3.

  • Default: The default statement is used with the switch statement. The default statement is executed when the case statement doesn't match any switch condition.

Example:

// Program to demonstrate the use of default statements.
 #include <iostream>
using namespace std;
int main() {
char oper; float num1, num2;
 cout << "Enter an operator (+, -, *, /): ";
 cin >> oper;
 cout << "Enter two numbers: " << endl;
 cin >> num1 >> num2;
switch (oper) {
    case '+':
        cout << num1 << " + " << num2 << " = " << num1 + num2;
        break;
    case '-':
        cout << num1 << " - " << num2 << " = " << num1 - num2;
        break;
    case '*':
        cout << num1 << " * " << num2 << " = " << num1 * num2;
        break;
    case '/':
        cout << num1 << " / " << num2 << " = " << num1 / num2;
        break;
    default:
        // operator is doesn't match any case constant (+, -, *, /) then default statement will execute.
        cout << "Error! The operator is not correct";
        break;
}


return 0;


}

Output:

Reserved Keywords in C++

Explanation:

The above code is written to demonstrate the default reserved keyword in c++. We have created a switch statement with different cases in the above code. We have also created a default statement. In the output, we have entered & operators, which do not match with any case statement, so the default statement will execute.

  • Delete: Delete is a keyword in c++ that is used to deallocate the memory for an object.

Example:

// Program to demonstrate the delete statement.


#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    // ptr is the NULL pointer
    int* ptr = NULL;
 
    // deleting pointer
    delete ptr;
 
    return 0;
}

Explanation:

The above code is written o demonstrate the use of the delete keyword in c++. We have created a pointer in the code and assigned null to it. Then we used the delete operator to delete the pointer.

  • Double: Double is a data type in c++ used to define a floating point.
  • Else: else is a statement in c++ used with an if statement. When the if statement condition fails, the else statement executes.
  • Enum: The enum is a user-defined data type. The enum data type will have integral constants.

Example:

// Program to demonstrate the enum statement.


#include <iostream>
using namespace std;
//declaring the enum data type with some integral constants.


enum week { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday };


int main()
{
    week today;
    today = Wednesday;
    cout << "Day " << today+1;
    return 0;
}

Output:

Reserved Keywords in C++

Explanation:

The above example demonstrates the use of the enum keyword in c++. We have created an enum data type using the days. When we have printed today+1, 4 is printed because Wednesday's number is 3 in the enum. In the main function, we created an object for the enum and assigned one of the integral constants.

  • Explicit: Explicit is a keyword in c++ which is used with the constructor. This keyword is used to prevent the constructor from implicit type conversion.

Example:

// C++ program to illustrate explicit conversions
#include <iostream>
using namespace std;


class Demo{
    public:
      //using explicit keywords before the constructor.
        explicit Demo(int n){
            demo1 = n;
        }
        int getDemo(){
            return demo1;
        }
    private:
        int demo1;
};


void getDemoExternally(Demo demo){
    cout << demo.getDemo();
}
// Main function.
int main()
{
    getDemoExternally(10);
    return 0;
}

Explanation:

The above code demonstrates the use of explicit keywords in c++. In the code, we have created a class with the name demo. We have created a constructor in the class, and then we created a getdemo function member. Then we have created a new function with the name getDemoExternally. We have created a function member with the keyword explicit. The getdemoexternally function has class as a parameter. So, when we call the function, the integer data type is converted to the demo class, but this is in the case of the implicit type conversion. But here, we have used the explicit keyword before the constructor, so this is impossible. An error will occur when we run the code because we have called the getdemoexternally function from the main function with the integer parameter, but the constructor function is explicit.

  • Float: float is a data type in c++ that takes decimal values.
  • For: The for is a keyword in c++ that is used for the looping between the statements until the condition fails.
  • Friend: The friend keyword is used to declare the friend function that can access all the private and protected variables in a class. To use the friend function, we need to declare the friend function in the class, and then we can define the function in any part of the code.

Example:

#include<iostream>
using namespace std;




class base {
    int a, b;
public:


    void get() {
        cout << "Enter two values:";
        cin >> a>>b;
    }
    friend float mean(base ob);
};


float mean(base ob) {
    return float(ob.a + ob.b) / 2;
}


int main() {
    
    base obj;
    obj.get();
    cout << "Mean value is : " << mean(obj);


}

Output:

Reserved Keywords in C++

Explanation:

The above code is used to demonstrate the use of the friend function keyword. We have declared a class base with two private variables in the code. We have also declared a friend function in the class to access the private variables. Outside the class, we have defined the friend function. In the main function, we have created the object for the class. Using the object, we have called the get function in the class, which is used to set the values of the variables. Then using the friend function, we have passed the class object as the parameters, which will return the means of the two values we entered using the get function.

  • Int: The int is a keyword used to define a variable of integer type.
  • Long: long is a keyword in c++ which is used to define a 32-bit integer type variable.
  • Mutable: The mutable is a keyword in c++ that is used before a variable. Mutable is opposite to the constant. When a variable is defined with the mutable keyword, the value can be changed even during the runtime. The variable values can also be changed in the constant class.

Example:

#include <iostream>
using namespace std;
class X
{
public:
  //creating a constant class.
   bool Get() const
   {
      m_accessCount++;
      return m_flag;
   }
private:
   bool m_flag;
   //creating a mutable value m_accessCount
   mutable int m_accessCount;
};


int main()
{
}

Explanation:

The above code is used to demonstrate the mutable keyword in c++. We have created two private variables in the code, one with the mutable keyword. We have also created a get() function defined with the const keyword. Even if the class is defined with the constant keyword, the value of the variable m_accessCount can be changed because we have declared the variable with a mutable keyword. When we remove the mutable keyword and run the code, then Error will occur.

  • New: The new is a keyword in c++ used to allocate the memory for the object in the code.

Example:

#include <bits/stdc++.h>


using namespace std;


int main() {


  // pointer initialized
  int * a = new int(5);


  //value printed
  cout << * a << endl;
}

Output:

Reserved Keywords in C++

Explanation:

The above code is written to demonstrate the new operator. In the above code, we created an array with the help of the new operator and used the same operator. We inserted variable 5 into the array. Using the cout statement, we have printed the values in the array a.

  • Private: Private is a variable used to declare the class members who are not visible outside the class
  • Operator:  In C++, an operator is overloaded with a new declaration with this method
  • Protected: Protected is a keyword in c++ declared with the class members. When a class member is defined with the protected keyword, the members can be accessed only by the respective class and derived classes.
  • Public: Public is a keyword in c++ which is used to define the class member. When a class is defined with the public keyword, the members can be accessed within any part of the code.

Example:

#include <iostream>
using namespace std;


class Base {
  private:
    int pv = 2;


  protected:
    int pr = 3;


  public:
    int pu = 9;




    int get() {
      return pv;
    }
};


class PublicDerived : public Base {
  public:


    int getProt() {
      return pr;
    }
};


int main() {
  PublicDerived object1;
  cout << "Private = " << object1.get() << endl;
  cout << "Protected = " << object1.getProt() << endl;
  cout << "Public = " << object1.pu << endl;
  return 0;
}

Output:

Reserved Keywords in C++

Explanation:

We have created private, protected, and public variables in the above code. As discussed, the private variable can only be accessed in the class. The protected variable can be accessed in the derived class. The public variable can be accessed in any part of the code. In the above code, we have used the get() function to get the private variable, whereas the protected variable is accessed from the derived class.

  • Return:  The return is a keyword in c++ that will return an object when some function is called.
  • Short: short is a keyword in c++ used to define a variable of 16- bit integer type data type.
  • Sizeof(): Thesizeof will return the size of the object, data type or the variable in bytes.
  • Struct: Thestruct is used to define a user-defined datatype containing different data types.

Example:

#include <iostream>
using namespace std;
struct Person
{
	int age;
	string name;
};
int main(void) {
	struct Person p;
	p.age = 18;
	p.name = "Example";
	cout << "Person name: " << p.name << endl;
	cout << "Person age: " << p.age << endl;


	return 0;
}

Output:

Reserved Keywords in C++

Explanation:

The above code is used to demonstrate the use of the struct keyword in c++. In the code, we created a structure of user-defined data type using the struct keyword. In the user-defined data type, we have int and string data types. In the main function, we have created an object for the struct using the object and set the values of the variable in the struct person.

  • Static: The static is a keyword in c++. When a variable or data member is defined with the static keyword, the data will be in static storage. The specific line where the static variable is declared with the value will be executed only once throughout the program.

Example:

#include <iostream>
using namespace std;


int main(void) {
	
  for(int i=0;i<5;i++){
    static int a=1;
    a=a+1;
    cout<<a;
  }
}

Output:

Reserved Keywords in C++

Explanation:

The above code is used to demonstrate the static keyword in c++. In the for loop, we have declared the static variable with the value 1. So that declaration statement will be executed only once, so for every loop, a value will not change to 1.

  • Switch: The switch statement compares the expression with the case values.
  • This: This statement points to an object or an instance of the class created.
  • Throw:  throw keyword will send an exception when a specific problem is detected. The catch block will catch the error.
  • True: True is a Boolean value that is equivalent to 1.
  • Try: Try is a keyword in c++. When we declare the block with the try keyword, the code will be tested for error during execution.
  • Typedef: typedef is a keyword in c++ which is used to give a new name to the existing datatype.

Example:

#include <iostream>
using namespace std;
typedef struct Person
{
	int age;
	string name;
} ob;
int main(void) {
	ob p;
	p.age = 18;
	p.name = "Example";
	cout << "Person name: " << p.name << endl;
	cout << "Person age: " << p.age << endl;


	return 0;
}

Output:

Reserved Keywords in C++

Explanation:

The above code demonstrates the use of the typedef keyword in c++. In the above code, we have declared a structure data type. Before defining the structure data type, we used the typedef keyword, which allows us the create another name for the structure, that is what we did at the end of the declaration. We have created a new name ob for the structure. In the main function, we have created the object using the ob name.

  • Union: Union keyword is a keyword in c++ used to define the user-defined datatype. The main use of the union is that all the members in the union share the same memory location.
union Data {
   int i;
   float f;
} data, data1;

In this way, we have to define a union data type. If we change one value in the union then all the varaibles present in the union will have same value.

  • Virtual: A virtual keyword along with the class member function. When a member function is defined with the virtual keyword inside the class, the derived class must define the virtual function.
  • Void: The void keyword can be used in two ways. If the void keyword is used in the function parameter, the function will not take any parameter. When the void is defined with the function name, the function doesn't return any value.
  • While: While is a loop statement. The statement inside the while block will execute until the while condition fails.