Есть ли способ использовать sizeof
в макросе препроцессора?
Например, за эти годы было множество ситуаций, в которых я хотел сделать что-то вроде:
#if sizeof(someThing) != PAGE_SIZE
#error Data structure doesn't match page size
#endif
Точная вещь, которую я проверяю здесь, полностью составлена - суть в том, что мне часто нравится вставлять эти типы (размер или выравнивание) проверок во время компиляции, чтобы защититься от того, кто-то изменяет структуру данныхможет привести к неправильному выравниванию или изменению размера вещей, которые могут их сломать.
Само собой разумеется, я не могу использовать sizeof
, как описано выше.