I'm a little confused on what happens when you pass a pointer to some object as a parameter to a function. Something like this:
MyObj* p = new MyObj;
void Test1(MyObj* p)
void Test2(MyObj** pp)
Is there any difference? I think Test1() is getting a copy of the pointer declared in main(), while Test2() is actually getting the same pointer declared in main().