As we create a simple object of class similarly we can create object of the pointer type of class.
For Example if we have a class with the name item, then we can create an object for item class as
item x;
Whenever item is a class and x is an object of item class, similarly we can define object of the type pointer as item *ptr;
There are two ways to access the members of class using pointers
1. The members of class can be accessed by using the arrow operator in the similar way as it is used in the structure variable.
pointer_var->class_member;
2. Another way is (*pointer_var).class_member;
In this notation parenthesis is necessary since dot has a higher precedence over the indirection operator(*).
#include<conio.h>
#include<iostream.h>
class max
{
int m,n;
int largest(void)
{
if(m>n)
{
return m;
}
else
{
return n;
}
}
public:
void getdata( )
{
cout<<"\n\tEnter any two nos--->";
cin>>m>>n;
}
void putdata( )
{
cout<<"\n\tLargest no is--->"<<largest( );
}
};
void main( )
{
clrscr( );
max *obj;
obj->getdata( );
(*obj).putdata( );
getch( );
}
Output:-
Enter any two nos---> 34 89
Largest no is---> 89
For Example if we have a class with the name item, then we can create an object for item class as
item x;
Whenever item is a class and x is an object of item class, similarly we can define object of the type pointer as item *ptr;
There are two ways to access the members of class using pointers
1. The members of class can be accessed by using the arrow operator in the similar way as it is used in the structure variable.
pointer_var->class_member;
2. Another way is (*pointer_var).class_member;
In this notation parenthesis is necessary since dot has a higher precedence over the indirection operator(*).
#include<conio.h>
#include<iostream.h>
class max
{
int m,n;
int largest(void)
{
if(m>n)
{
return m;
}
else
{
return n;
}
}
public:
void getdata( )
{
cout<<"\n\tEnter any two nos--->";
cin>>m>>n;
}
void putdata( )
{
cout<<"\n\tLargest no is--->"<<largest( );
}
};
void main( )
{
clrscr( );
max *obj;
obj->getdata( );
(*obj).putdata( );
getch( );
}
Output:-
Enter any two nos---> 34 89
Largest no is---> 89
0 Comments:
Post a Comment