在C++語言中聲明一個這樣的函數(shù): int function(void) { return 1; } 則進(jìn)行下面的調(diào)用是不合法的: function(2); 因為在C++中,函數(shù)參數(shù)為void的意思是這個函數(shù)不接受任何參數(shù)。
我們在Turbo C 2.0中編譯: #include "stdio.h" fun() { return 1; } main() { printf("%d",fun(2)); getchar(); } 編譯正確且輸出1,這說明,在C語言中,可以給無參數(shù)的函數(shù)傳送任意類型的參數(shù),但是在C++編譯器中編譯同樣的代碼則會出錯。在C++中,不能向無參數(shù)的函數(shù)傳送任何參數(shù),出錯提示“'fun' : function does not take 1 parameters”。