我正在阅读一些针对openThread的C ++代码,但我从未编程过C ++,但我想知道exit:
在底部附近跟着return error;
的作用
有exit:
和没有有什么区别
ThreadError otGetParentInfo(otInstance *aInstance, otRouterInfo *aParentInfo)
{
ThreadError error = kThreadError_None;
Router *parent;
VerifyOrExit(aParentInfo != NULL, error = kThreadError_InvalidArgs);
parent = aInstance->mThreadNetif.GetMle().GetParent();
memcpy(aParentInfo->mExtAddress.m8, parent->mMacAddr.m8, OT_EXT_ADDRESS_SIZE);
aParentInfo->mRloc16 = parent->mValid.mRloc16;
exit:
return error;
}
最佳答案
这是GOTO语句的标记。
它允许程序从(几乎)代码中的任意点跳转到该标记。当您无法从深层嵌套的结构中返回而不使用大量的break
语句或类似情况时,通常用于硬件编程或嵌入式编程。
关于c++ - 退出什么:做,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40995261/