c++ - Catch Boost exception -


when resolving hostname of icmp::resolver::query query(icmp::v4(), host, ""); , destination = *resolver.resolve(query); exception when hostname couldn't resolved. want catch exception, don't caught. code have @ moment is:

        icmp::resolver::query query(icmp::v4(), host, "");           try         {             destination = *resolver.resolve(query);                                                  }         catch(boost::exception & e)         {              //print exception         }          catch (...) {             //print exception            } 

what doing wrong?

update: application made in visual studio 2012 , have c++ unmanaged , managed(.net) code. version of boost 1.54.0

i have solved without using overloaded function of icmp::resolver function gives errorcode. null pointer exception on iterator , solved not have pointer resolver.resolve(query,ec)

        {             icmp::resolver::query query(icmp::v4(), host, "");             iter = resolver.resolve(query, ec);             if (!ec)              {                 destination = *iter;             }              else              {                 ec.value();             }        } 

Comments