Programming tutorial for understanding "Smart Pointers".
Smart Pointers :
“In C++, an object that implements the functionality of a pointer and additionaly performs some action whenever an object is accessed through it. Smart pointers are implemented by overloading the pointer-derefrence(->) operator”.
above is about smart pointers,
but
how to overload the -> operator?
how to implement a “smart pointers”?
and are “smart pointers” useful?
are the FAQ of “smart pointers”.
in this part I show that how to overload the -> operator by this example:
class sp1
{
public:
int data;
sp1* operator ->() { return this;};
};
int main()
{
sp1 t;
cin >> t.data;
cout << t->data;
}
see that (->) operator work the same as (.) operator.
NOTE:
(.) oprator can’t be overloaded.
GoodLuck.