У меня есть структура serializable
в struct.h, которую я сериализую в serialize.h, используя собственный метод сериализации. Если в мою serializable
структуру внесено изменение, мне нужно убедиться, что соответствующее изменение также внесено в serialize.h.
Типичный метод отражение использует для этого несколько макросов. Но природа нашей структуры и способ, которым мы массируем данные во время сериализации, не работают для этого.
Есть ли какой-нибудь способ выполнить некоторую проверку времени компиляции stati c, поэтому, если структура serializable
изменилось любым способом без изменения serialize.h, тогда сборка не удастся.
Один из способов, о котором я подумал, но предпочитаю делать это в качестве крайней меры, это сделать копию определения serializable
struct в serialize.h и использовать boost :: is_same , проверить с помощью сообщение об ошибке, запрашивающее соответствующее изменение в serialize.h