Suppose someone else writes a function foo like this,

Code:
void foo()
{
       try{
              do something...
       }
       catch(CSomeException* e)
       {
              I catch an exception...
       }
}
Assume I can't change the code above. If I call the function foo, how can I catch the exception CSomeException? If I do something like this,
Code:
      try{
           foo();
      }
      catch(CSomeException* e)
      {
           I also want to catch an exception...
       }
I am never going to catch the exception since the function foo has already taken care of it. So my question is that in this case how am I able to catch exception CSomeException? Thanks.