You are on page 1of 5

#include <iostream>

using namespace std;

template<class t1>

class array

t1 arr[0];

int size;

public:

array(int n)

size = n;

void read()

for(int i=0;i<size;i++)

cin>>arr[i];

void print();

};

template<class t1>

void array<te>::print()

for(int i=0;i<size;i++)

cout<<arr[i];

int main()
{

array<int >a(5);
a.read();

a.print();

b.read();

b.print();

return 0;

example 2)
template<class type1,class type2,class type3=char>
class student
{
type1 id;
type2 name;
type3 grade;
public:
void get-data()
{
cin>>id>>name>>grade;
}
void show-data();
};
template<class type1,class type2,class type3>
void student<type1,type2,type3>::showdata-data()
{
cout<<id<<name<<grade;
}
int main()
{
student<int,char[10]> s1;
s1.get-data();
s1.show-data();
student<char,char[10],char[20]> s2;
s2.get-data();
s2.show-data();
return 0;
}

3) example

template<class type>
class counter
{
public:
static type count;
int dount;
counter()
{
count++;
dcount++;
}
void print();
};
template<class type>
type counter<type>::count=0; (static count initialsed)
template <class type>
void counter<type>::print()
{
cout<<count<<" "<<dcount;
}
int main()
{
counter<int> c1;
c1.print(); 1 1
counter<int> c2;
c2.print(); 2 1
counter<int> c3;
c3.print(); 3 1
return 0;
}

example 4)
template<class type>
class array
{
type *arr;
int size;
public:
array(int n)
{
arr = new type[n];
size = n;

}
void read()
{
for(int i=0;i<size;i++)
cin>>arr[i];
}
friend void merge(array<type>&,array<type>&,array<type>&);
};
void merge(array<type>&a1,array<type>&a2,array<type>&a3)
{
int i=0;
for(int j=0;j<a1.size;j++)
a3.arr[i++]=a1.arr[j];
for(int j=0;j<a2.size;j++)
a3.arr[i++]=a2.arr[j];
for(int j=0;j<a3.size;j++)
cout<<a3.arr[j]<<" ";
}
int main()
{
int n1,n2,n3;
cin>>n1>>n2;
array<int>an2;
a.read();
array<int>b(n2);
b.read();
}

5 example)

template<class t1>
class array
{
t1 *arr;
int sie;
public:
array(int n)
{
arr = new t1[n];
size = n;
}
void read()
{
for(int i=0;i<size;i++)
cin>>arr[i];
}
void print();
array* add(array arr2); (return this;)
array* sub(array arr2);
}
int main()
{
array<int> a(5);
a.read();
array<int> b(5);
b.read();
a.add(b);
a.print();
a.sub(b);
a.print();
}

template<class t1>
void array<t1>::print()
{
for(int i=0;i<size;i++)
cout<<arr[i]<<" ";
}
template<class t1>
array<t1>* array<t1>::add(array<t1>arr2)
{
for(int i=0;i<size;i++)
{
arr[i] = arr[i]+arr2.arr[i];
}
return this;
}
template<class t1>
array<t1>* array<t1>::sub:(array<t1>arr2)
{
for(int i=0;i<size;i++)
{
arr[i] = arr[i] - arr2.arr[i];
}
return this;
}

You might also like