C++中的return語句是函數中一個重要的語句,return語句用於結束當前正在執行的函數,並將控制權返回給調用此函數的函數。
return語句有兩種形式:
return;
return expression;
1、沒有返回值的函數
不帶返回值的return語句只能用於返回類型為void的函數,return語句是為了引起函數的強制結束,這種用法類似於循環結構中的break語句的作用。
例子:
代碼如下:
void swap(int &v1,int &v2)
{
if(v1==v2)
return;
int temp=v2;
v2=v1;
v1=tmp;
}
返回類型為void的函數通常不能使用第二種形式的return語句,便是,它可以返回另一個返回類型同樣是void的函數的調用 結果:
代碼如下:
void do_swap(int &v1,int &v2)
{int temp=v2;
v2=v1;
v1=tmp;
}
void swap(int &v1,int &v2)
{
if(v1==v2)
return false;
return do_swap(v1,v2)
}
2、具有返回值的函數
任何返回類型不是void的函數都必須返回一個值,而且這個返回值的類型必須和函數的返回類型相同,或者能隱式轉化為函數的返回類型。
盡管C++不能確保結果的正確性,便能保證函數每一次return都返回適當類型的結果。例如,下面的程序就不能通過編譯: