2011-11-18 11 views

Odpowiedz

8

Kompilatorzy czasami skarżą się na niewykorzystane parametry; "obsada" (void) jest po prostu sposobem na użycie zmiennej w pustym, pozbawionym efektów ubocznych kontekście, aby kompilator nie skarżył się, że jest "nieużywana".

EDIT: Rodrigo wskazuje poniżej, ostrzeżenie kompilator może być tłumione bez przedrostka (void), ale to może się kolejne ostrzegawczy (do ekspresji, który nie ma znaczenia) zamiast. Tak więc (void)filename to sposób zapobiegania obu ostrzeżeniom.

+0

Co jest z czasem przeszłym? – James

+0

W rzeczywistości obsada "pustki" nie była konieczna, aby usunąć ostrzeżenie. Bez niego pojawi się jednak inne ostrzeżenie o "ekspresji bez efektu". '(Void)' uniknął tego. – rodrigo

+0

@ James: Nigdy nie widziałem tego w żadnym kompilatorze, jakiego kiedykolwiek używałem, ale jestem też całkiem młody. :-) –

3

Zapobiega to ostrzeżeniu o nieużywanym parametrze, niczym więcej.

Powiązane problemy