You can also do

void f(a ** b)
{
     (*b) = new a();
     (*b)->set(5);
}
int main()
{
     a *a1;
     f(&a1);
     cout<<"x = "<<a1->get();
    return 0;
}

The logic behind this is the basic difference between call by value and call
by reference :-) In your original code, the changes in b will not reflect in
a. In C you achieve it by using double pointers, and in C++ you can achieve
it by using the & operator! :-)

-- 
Kashyap.K,
III year, B.E. CSE,
College of Engineering Guindy,
Anna University,
Chennai.
--
If you've never failed, you've never lived!

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to