2010-03-06 24 views
5

Estaba yendo por el código fuente de Yahoo's Trafic Server Está escrito en C++.¿Cuál es la importancia/uso de hacer vacío (param); al comienzo de la función?

En casi todos los métodos (de uno de los módulos), se anulan (param) en cada parámetro que recibe la función.
(Eg abajo)

¿Alguien puede explicar para qué sirve esto?

int                                          
some_method_name(caddr_t addr, size_t len, caddr_t end, 
int flags) 
{ 
    (void) end;                                     
    (void) addr;                           
    (void) len;                                     
    (void) end;                                    
    (void) flags; 
    ...... 
    .... 
} 

PS: Para el código fuente real, por favor ver los métodos de http://github.com/apache/trafficserver/blob/trunk/iocore/eventsystem/SocketManager.cc

+1

Editado. Al publicar ejemplos de código, formatéelos con el botón "Muestra de código" (ceros y unos). – UncleBens

+0

En C++ puedes hacer eso: 'int some_method_name (caddr_t addr, size_t, caddr_t, int)' si no estás usando algunos parámetros. –

+0

Eso no ayuda si el código, p. controlado mediante indicadores de compilación, * podría * usar los parámetros (aquí '#if (HOST_OS == linux)'). –

Respuesta

8

Esto suprime las advertencias "argumento" no utilizada. Esas declaraciones no hacen nada, pero cuentan como usar el argumento.

+0

Oh sí ... Gracias por la respuesta rápida – Prafulla

Cuestiones relacionadas