Обратите внимание, что (в зависимости от Вашего компилятора и динамического компоновщика), можно сохранить совместимость с предыдущими версиями общей библиотеки, только добавив до конца класса (т.е. до конца интерфейса), и не удалив или изменив что-либо еще. (Это верно для G ++ и libtool, и три схемы управления версиями части совместно использованных библиотек GNU/Linux отражают это.)
существует также идея, что необходимо приказать, чтобы члены класса избежали потраченного впустую пространства из-за выравнивания памяти; одна стратегия состоит в том, чтобы заказать участникам от самого маленького до самого большого размера. Я никогда не делал этого или в C++ или в C все же.
Используете ли вы «автоматически генерировать» или «использовать предварительно скомпилированный заголовок» в проекте и «создавать предварительно скомпилированные заголовок " на одном файле cpp? Последний более эффективен, но я видел, как конфигурация отдельных файлов в проектах случайно сбрасывалась, так что файл "stdafx.cpp" (или любой другой) больше не генерирует предварительно скомпилированный заголовок.
Попробуйте перестроить свой проект в новый, скопировав только файлы, необходимые для расходных материалов.