[fdo-dev] Standard exceptions handling practice
Greg Boone
greg.boone at autodesk.com
Fri Sep 1 15:05:09 EDT 2006
I would write something like...
try
{
// operation that throws exception derived
// from standard ex. type std::exception
bar();
}
catch ( FdoException* ex )
{
throw FdoException::Create(
NlsMsgGet(XYZ_123_FAIL_BAR, "bar() failed"), ex);
}
catch ( std::exception &e )
{
FdoExceptionP cause =
FdoException::Create((FdoString*)(FdoStringP(e.what())));
throw FdoException::Create(
NlsMsgGet(XYZ_123_FAIL_BAR, "bar() failed"), cause);
}
-----Original Message-----
From: Mateusz Loskot [mailto:mateusz at loskot.net]
Sent: Friday, September 01, 2006 2:14 PM
To: dev at fdo.osgeo.org
Subject: Re: [fdo-dev] Standard exceptions handling practice
Mateusz Loskot wrote:
> How about forwarding std::exception to FdoException hierarchy,
> for example to retrieve what() message?
>
> void foo()
> {
> try
> {
> // operation that throws exception derived
> // from standard ex. type std::exception
> bar();
> }
> catch(std::exception& ex)
> {
> throw FdoException::Create(
> NlsMsgGet(XYZ_123_FAIL_BAR, "bar() failed"), ex);
-----------------------------------------------------------^^^^^^^
I know it won't work, because FdoException::create() does not take
std::exception type.
So, this is also my question.
Cheers
--
Mateusz Loskot
http://mateusz.loskot.net
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe at fdo.osgeo.org
For additional commands, e-mail: dev-help at fdo.osgeo.org
More information about the Fdo_dev
mailing list