История изменений
Исправление safocl, (текущая версия) :
- Указатели не конвертируются если нету `standard-layout structs`, в случае с начальной последовательностью в структуре
в изначальном обсуждении нет преобразования указателей (ссылок) — там доступ к неактивному члену юниона.
- Можно использовать неактивные union если выполняется `standard-layout structs` в отношении type и начальная последовательность, именно из за проблемы с `standard-layout structs` ты вводишь generic
да.
Если все верно, то мой пример доказывает что можно преобразовывать struct* и int* если int это первый элемент struct
да.
а значит для int выполняется `standard-layout structs`, а значит он выполняется и для первого type в SDL_Event
нет — int не является структурой даже... для каста не нужно что бы само поле было стандарт-лейаут-структурой — а такое просто применимо если структура содеражащая таковое поле является стандарт-лейаут-структурой.
для не-стандарт-лейаут-структуры такой каст по принципу поинтер-интерконвертибле нельзя делать — будет уб.
Исходная версия safocl, :
- Указатели не конвертируются если нету `standard-layout structs`, в случае с начальной последовательностью в структуре
в изначальном обсуждении нет преобразования указателей (ссылок) — там доступ к неактивному члену юниона.
- Можно использовать неактивные union если выполняется `standard-layout structs` в отношении type и начальная последовательность, именно из за проблемы с `standard-layout structs` ты вводишь generic
да.
Если все верно, то мой пример доказывает что можно преобразовывать struct* и int* если int это первый элемент struct
да.
а значит для int выполняется `standard-layout structs`, а значит он выполняется и для первого type в SDL_Event
нет — int не является структурой даже... для каста не нужно что бы само поле было стандарт-лейаут-структурой — а такое просто применимо если структура содеражащая таковое поле является стандарт-лейаут-структурой.