Я работаю над реверсом библиотеки написаной на VS2003 .NET. В одной из структур оттуда есть std::list, который имеет некое смещение и размер в 12 байтов, после него еще идут другие свойства. Я пишу в VS2010 и у меня sizeof(std::list) 16 байтов. Эта структура должна передаваться в библиотеку и там как-то обрабатываться. Если я передаю структуру с размером списка в 16 байт, разумеется, значения свойств, что идут следом за списком сдвигаются на 4 байта. Вопрос: как мне использовать, или где взять std::list размером в 12 байт?
Скопировать std::list из хедеров VS2003 в свой хедер my_list.h
Переименовать этот std::list в класс (не std) my_list
Использовать my_list вместо std::list при работе с библиотекой
Если там в хедерах прописан std::list&, то при вызове функции можно передавать reinterpret_cast<std::list&>(my_list_instance), чтобы пропихнуть тот список,
который нужен либе