为什么嵌入式平台开发人员不断尝试C++ exceptions
从他们的SDKs
.
例如,Bada SDK
针对异常使用建议以下解决方法,它看起来异常难看:
result
MyApp::InitTimer()
{
result r = E_SUCCESS;
_pTimer = new Timer;
r = _pTimer->Construct(*this);
if (IsFailed(r))
{
goto CATCH;
}
_pTimer->Start(1000);
if (IsFailed(r))
{
goto CATCH;
}
return r;
CATCH:
return r;
}
这种行为的原因是什么?
据我所知,ARM
编译器完全支持C++ exceptions
,这实际上不是问题。还有什么?平台上的异常使用和展开的开销ARM
真的要花很多时间来解决这些问题吗?
也许还有其他我不知道的东西?
谢谢你。