Алексей, перед тем как писать новую лекцию, обязательно прочтите хоть половину книги Стива Макконнелла Совершенный код. Имена Enum с большой буквы, переменные объявляйте в том контексте, где они требуются и т.п.
Я лекции не смотрел. Я про код, который тут увидел. То что вы делаете это бесспорно важно, и думаю аудитория найдется. Просто как совет — прочитайте книжку, чтобы проникнуться как красиво писать код, точнее красивее и понятнее.
Такое приведение типа здесь является допустимым, но в целом, это ошибка. Она ярко проявит себя, когда надо будет преобразовывать, скажем, рубли в копейки, т.е. получить вместо 10 руб. 50 коп число 1050 копеек:
shortResult = (short)(floatVal * 100);
Тут и появляется эта ошибка, дело в том, что число 10.5f может хранится в памяти как 10.4(9) и при таком преобразовании мы получим 1049.
я хочу спросить автора, зачем делать (n + 1)й курс по C#? чем не угодили предыдущие?
по содержанию замечания:
рекомендую обратится к чудесному документу Design Guidelines for Developing Class Libraries. Который гласит о том, что классы, енамы (и их члены) и структуры надо называть с большой буквы. Так же там говорится, что надо использовать int как основу enum, если нет особых поводов. у вас byte зачем-то.
так же вы породили ужасное зло: mutable struct. по этому поводу написано много, и вот все в том же документе: Choosing Between Classes and Structures. У вас не выполняется ни одного пункта из 4х в поддержку struct.
и на последок. «1. Какая из операций не может выполняться неявно:» там 2 операции не выполняются не явно. либо варианты ответа не правильные, либо формулировка.
Visual C# for beginners. Лекция 5. Преобразование типов. Перечисления, структуры, массивы