Зміст:
Визначення - Що означає Оператор конверсій?
Оператор перетворення в C # - це оператор, який використовується для оголошення конверсії за визначеним користувачем типом, щоб об'єкт цього типу міг бути перетворений на або з іншого визначеного користувачем типу або базового типу. Два різних типи перетворень, визначених користувачем, включають неявні та явні перетворення.
Взагалі оператори явного та неявного перетворення надають можливість класу передаватись на інші можливі типи даних.
Оператору явного перетворення потрібно викликати трансляцію та використовувати його, коли перетворення має бути видимим користувачам оператора. Він використовується в виразах литих, коли два типи даних не є повністю сумісними, і тому потрібен оператор лиття.
Неявний оператор перетворення простий у використанні. Він не потребує спеціального синтаксису, і це покращує читабельність коду. Він також допомагає класу конвертувати дані типу даних у його сумісний тип без введення тексту. Неявний показник повинен використовуватися в таких ситуаціях, як виклики та присвоєння члена функції, коли немає ризику втрати даних або виникнення винятків.
"Техопедія" пояснює оператор конверсій
Неявна конверсія може бути визначена для класу за допомогою ключового слова "неявна" разом із ключовим словом "оператор". Явна операція перетворення може бути визначена для класу, використовуючи ключове слово "явний" разом з ключовим словом "оператор". Обидві конверсії слід визначити статичними.
Наприклад, клас RomanNumeral можна визначити з двома операторами перетворення. Оператор неявного перетворення може бути визначений для перетворення з класу RomanNumeral у рядок для відображення числа у формі римської цифри; оператор явного перетворення може бути визначений для здійснення перетворення з класу RomanNumeral в ціле число.
Перетворення класу в тип об'єкта або тип інтерфейсу не дозволяється. Те саме стосується перетворення з базового класу в клас, похідний від базового класу.
Для даного класу як явні, так і неявні оператори не можуть бути вказані для перетворення з одного типу в інший.
Слід подбати про те, щоб неявна конверсія не призвела до втрати даних або винятку. Якщо є виправдані причини, щоб кинути виняток, перетворення має бути явного типу.
Це визначення було написано в контексті C #

