很抱歉,如果这是一个愚蠢的问题,但我对编程很陌生。 我一直在研究各种各样的东西,合并排序让我很头疼。
void part(int arr[],int min,int max)
{
int mid;
if(min<max)
{
mid=(min+max)/2;
part(arr,min,mid);
part(arr,mid+1,max);
merge(arr,min,mid,max);
}
}
我还不明白当它甚至没有完全定义时,如何在自己的定义中使用函数部分。另外,我真的不太明白这是如何工作的..请帮助我理解这一点!!
任何帮助非常感谢。谢谢。
答案 0 :(得分:2)
C ++区分正在定义的函数和声明的函数,声明函数的区别只是知道它的签名(所以make
。这就是其他部分的充分信息。调用它的程序,实际上不需要代码体。然后定义代码本身的定义。
答案 1 :(得分:1)
你需要调用一个函数就是它的声明,函数定义也是一个自动声明(如果还没有声明),这个自动声明所需要的只是函数签名(返回类型,名称,参数,但不完整正文。)
如果没有这个,就很难做recursion,这是函数调用自身时会发生的事情。