Я хочу получить смещение члена структуры. Я знаю, что это было задано несколько раз, и ответ всегда могучий offsetof. Ну, мой случай немного отличается: мне нужно смещение неизвестного типа. Вот например:
void fill_struct(void* unknown)
{
...
}
Единственное, что я узнаю из неизвестного, — это порядок, в котором устанавливаются типы. то есть
int
int
float
...
string
И главная проблема здесь заключается в выравнивании / заполнении, так как я не знаю, как его вычислить, и есть ли способ вообще.
На этот вопрос часто отвечают: Почему вы хотите это сделать?
Для этих людей: я реализую парсер JSON в C ++ и столкнулся с проблемой (представляющей несколько типов массивов), и мое решение состоит в том, чтобы отобразить значения массива в пользовательскую структуру.
Я принимаю отзывы об этом решении, но в основном меня интересует ответ на мой вопрос
Задача ещё не решена.