Archivos de encabezado de redefinición de C ++ (winsock2.h)

¿Cómo evito incluir archivos de encabezado dos veces? El problema es que incluyo elen MyClass.h y luego incluyo MyClass.h en muchos archivos, por lo que incluye varias veces y se produce un error de redefinición. ¿Como prevenir? Estoy usando #pragma una vez en lugar de incluir guardias, y supongo...