我有一个代码,其中某些地方有返回2,我无法理解其含义。任何人都可以帮我解释这个回归2的含义。提前谢谢。
答案 0 :(得分:2)
声明
return 2;
表示函数,它返回值2
。
调用者函数可以使用该值作为被调用函数终止条件的指示(在摘录中,它可能是一个特定的值,其中隐藏的含义已分配,并且无法创建新的CATDocumentServices'或者只是& #39;出了点问题' ...)。
答案 1 :(得分:0)
在C ++中,return
语句从当前函数返回,如
void func(arg_type arg)
{
// some code
return; // can appear almost anywhere in the function body, including several times
// more code
}
需要返回值的函数需要在return
语句中给出这样的值,如
return_value_type func(arg_type arg)
{
// ...
return some_value_of_return_value_type;
// ...
}
在您的情况下,似乎语句取自返回int
的函数体(或从int
可转换的相关类型)。因此,return 2
只返回值2.因此,如果您有
int my_func()
{
// ...
CATDocument* pDoc = NULL;
auto hr = CATDocumentServices::New("CATDrawing", pDoc);
if (FAILED(hr)) return 2;
// ...
}
int val = my_func();
如果执行的路径超过return 2
中的my_func()
语句,将为val分配2。