Безопасно ли для структур реализовывать интерфейсы?

В этом вопросе происходит interface несколько вещей...

Структура struct может реализовать интерфейс, но c-sharp есть проблемы, связанные interface с приведением типов, изменчивостью structs и производительностью. Подробности c#.net смотрите в этом посте: https://docs.microsoft.com/en-us/archive/blogs/abhinaba/c-structs-and-interface

Как csharp правило, структуры следует c#.net использовать для объектов, имеющих csharp семантику типа значения. Реализуя struct интерфейс в структуре, вы c#.net можете столкнуться с проблемами struct упаковки, поскольку структура struct перемещается туда и обратно visual-c# между структурой и интерфейсом. В visual-c# результате упаковки операции, изменяющие c# внутреннее состояние структуры, могут c#.net вести себя некорректно.

c#

interface

struct

2022-11-08T20:53:32+00:00