В дополнение к ответу, приведенному выше, стоит упомянуть, что часто рекомендуется отключать предупреждение только в ограниченном объеме (это особенно важно, если вы помещаете эти прагмы в заголовочные файлы):
#pragma warning (disable : 4121) // alignment of a member was sensitive to packing
#include <third-party-header.h>
#pragma warning (default : 4121) // Restore default handling of warning
Другой способ сделать это - использовать механизм push / pop. Это может быть удобно, если вам нужно отключить кучу предупреждений в сторонних заголовочных файлах:
#pragma warning(push)
#pragma warning(disable: 4018) // signed/unsigned mismatch
#pragma warning(disable: 4100) // unreferenced formal parameter
#pragma warning(disable: 4512) // 'class' : assignment operator could not be generated
#pragma warning(disable: 4710) // 'function' : function not inlined
#pragma warning(disable: 4503) // decorated name length exceeded, name was truncated
#include <third-party-header1.h>
#include <third-party-header2.h>
#include <third-party-header3.h>
#include <third-party-header4.h>
#pragma warning(pop)