LINUX.ORG.RU

История изменений

Исправление theNamelessOne, (текущая версия) :

Насколько я понимаю, трейты(они же поведения) это замена наследования?

Это немного разные вещи (в Rust наследования типов нет). Трейты больше похожи на интерфейсы из мейнстримных OOP языков (C++, C#, Java и пр.). Более точное соответствие — классы типов из Haskell.

Можно думать о трейтах как о множестве типов, для которых определены некоторые операции.

То есть имеется некий интерфейс(трейт), который в принципе каждый может реализовать по-разному?

Да.

И еще один вопрос: трейты это и есть типажи?

Я это слово в контексте программирования и Rust в частности вообще первый раз слышу, тут нужно quantum-troll спрашивать.

Исходная версия theNamelessOne, :

Насколько я понимаю, трейты(они же поведения) это замена наследования?

Это немного разные вещи (в Rust наследования типов нет). Трейты больше похожи на интерфейсы из мейнстримных OOP языков (C++, C#, Java и пр.). Более точное соответствие — классы типов из Haskell.

То есть имеется некий интерфейс(трейт), который в принципе каждый может реализовать по-разному?

Да.

И еще один вопрос: трейты это и есть типажи?

Я это слово в контексте программирования и Rust в частности вообще первый раз слышу, тут нужно quantum-troll спрашивать.