Skip to main content

C++ program to swap two variable using template function

C++ program to swap two variable using template function


Today i am going to swap to variable's contents using template function. The below is the C++ program that swap two variable's contents.

// C++ program to swap two variable contants 
// Using template function 
#include<iostream>

using namespace std;

template <typename t>  // defining template function 
void swap(t *var,t *var1){
t var2;
var2=*var; //swaping the contents
*var=*var1;
*var1=var2;
}

int main(){
// displaying the menu to the user
cout<<"1. Swap two integer numbers:";
cout<<"\n2. Swap two float numbers:";
cout<<"\n3. Swap two characters:";
cout<<"\n Enter your choice:";
short i;
cin>>i; // storing the choice of the  user
switch(i){
case 1:
{
int a,b;
cout<<"\n Enter 1st numbers:";
cin>>a;
cout<<"\n Enter 2nd number:";
cin>>b;
cout<<"Before swap:\n a="<<a<<" b="<<b;
swap(&a,&b); // calling template function
cout<<"\nAfter swap:\n a="<<a<<" b="<<b;
break;
}
case 2:
{
float a,b;
cout<<"\n Enter 1st float number:";
cin>>a;
cout<<"\n Enter 2st float number:";
cin>>b;
cout<<"Before swap:\n a="<<a<<" b="<<b;
swap(&a,&b); // calling template function
cout<<"\nAfter swap:\n a="<<a<<" b="<<b;
break;

}
case 3:
{
char a,b;
cout<<"\n Enter 1st character:";
cin>>a;
cout<<"\n Enter 2st character:";
cin>>b;
cout<<"Before swap:\n a="<<a<<" b="<<b;
swap(&a,&b); // calling template function
cout<<"\nAfter swap:\n a="<<a<<" b="<<b;
break;
}
default:
cout<<"\n Invalid choice!!! Try again:";
main(); // asking to the user to re-enter his/her choice
}

Output :-

The output of the above program is:

When user enter his or her choice 1, then the out put will be:


C++ program to swap to variable's contents

When user enter his or her choice 2, then the output will be :


C++ program to swap to variable's contents

When user enter his or her choice 3, then the out put will be:


C++ program to swap to variable's contents

Dear visitors, drop your questions (if any) on the comment section, i will answer your questions. If you have any doubts please comment me, i will try to solve your doubts. Thanks for visiting. 

Comments

Popular posts from this blog

Advantage and disadvantages of Structure and object oriented programming

In my last post, i discussed about structured oriented programming, object oriented programming and language processors. Today i am going to discuss about :- 1. Advantages and Disadvantages of structured oriented programming. 2. Advantages and Disadvantages of object oriented programming. 3.Difference between them. And in the next post i will discuss about:- 1. 1st C++ program and explanation. 2. Structure of a C++ program. 3. Data types, Identifiers, Variable and Keywords. Let's start: Advantages of Structure oriented programming:- 1. It is easy to understand. 2. It is to test a program that is divided into modules(sub-problem) and sub-module(sub-sub-problem). 3. Modification is easier. 4. It results in speedy execution of the program. 5. Development of modules is easier. Disadvantages of Structured oriented programming:- 1. Modules occupy more space in the memory. 2.  Testing of every module is time consuming process. 3. Combination of modules becomes di

size and range of basic data types and modifing the basic types.

Size and range of basic data types:-   Modifying the basic types:-  Except for type void, the basic data types may have various modifiers preceding them.  You use a modifier to alter the meaning of the base type to fit various situations more  precisely. The list of modifiers is shown here: signed unsigned long short You can apply the modifiers signed, short, long, and unsigned to integer base  types. You can apply unsigned and signed to characters. You may also apply long to  double. The above  table shows all valid data type combinations, along with their minimal ranges and approximate bit widths. (These values also apply to a typical C++  implementation.) Remember, the table shows the minimum range that these types will  have as specified by Standard C/C++, not their typical range. For example, on  computers that use two's complement arithmetic (which is nearly all), an integer will have a range of at least 32,767 to –32,768. The use of signed on integers is al

C++ tokens, rule for naming variable and rule for constructing integer constant, real constant and character constant

 C++ character set :- The following image shows the valid character that are used in C++.  C++ data types:- 1st of all we have to know that What is a data? Data is a raw material for constructing a information. For example, the following list are the data:- Ram,17, XII C. And from this data we can construct the information as Ram Aged 17 years is in class XII C. Data may be any number,words, amount,quantity. Now, Let's come on the topic: Latter i will discus about 'structure', 'Union', 'Class', Array', 'function','pointer','reference' for now there are five basic data types that are: 1. int(integer)  2. char(Character) 3. float 4. double  5. void  Now look at variable:  Variable is a entity whose value may change and in programming language it is used to store data. A integer type variable can hold a integer number(number must be a whole number either in positive or in negative but not in fraction),  a ch