2017-07-28 71 views
-4

我是C++新手。我有一個關於void的問題,我似乎無法找到明確的答案。C++ void函數

正如我已閱讀和理解,void不返回任何值。

但在這裏,如果我說:

void display(int a, int b){ 
    cout << a+b; 
} 

當我使用此功能在main()爲:

display(20,30); 

是不是它的返回值a+b

有人可以幫我理解它背後的邏輯嗎?

+10

打印並返回使用返回類型是不一樣的。 – DimChtz

+5

你的C++教科書對此有何評論? –

+1

void表示該函數不返回有用的值。如果你想返回一個int,使返回類型爲int。 – Carcigenicate

回答

8

是不是它返回a + b的值。

不,它不是返回任何值,但只是在控制檯打印結果。

void作爲返回類型意味着該函數不會產生任何值,您可以在進一步的計算中使用它。如果你需要的話,你應該使用類似

int add(int a, int b){ 
    return a+b; 
} 

,您可以使用它像

int main() { 
    std::cout << add(5,4) << std::endl; 
} 

顯示在控制檯上的結果。

0

無效不返回答案,

使用int,而不是像:

int display(int a, int b){ return a+b; }

COUT將只打印在任何你想打印。所以

cout<<a+b;將只打印了答案

你必須使用return語句之前函數的名稱

+0

_「答案」_是這裏使用的一個非常不吉祥的術語。 – user0042