Урок за C #, Оператори за преобразуване
Понякога обект от определен клас трябва да се използва в израз, който включва данни от друг тип. В някои случаи за тази цел е подходящо претоварване на един или повече оператори, а в други случаи обикновено преобразуване на типа клас в целевия тип. За ситуации като тази C # предоставя специален вид операторски метод, наречен оператор на трансформация . Такъв оператор преобразува обект от оригиналния клас в друг тип. Операторите на преобразуване помагат за пълна интеграция на типове класове в програмната среда на C #, което ви позволява свободно да използвате класове заедно с други типове данни, при условие че е определен редът на преобразуване в тези типове.
Има две форми на оператори за преобразуване: явна и неявна. Те са представени по-долу в общи линии:
където target_type обозначава типа, към който се извършва преобразуването; source_type е типът, който се преобразува; стойност - специфичната стойност, придобита от класа след трансформация. Операторите на преобразуване връщат данни от target_type и не се допускат други типове данни за връщане.
Ако операторът за преобразуване е посочен неявно (имплицитен), тогава преобразуването се извиква автоматично, например когато обектът се използва в израз заедно със стойност на целевия тип. Ако операторът за преобразуване е посочен изрично (изрично), тогава преобразуването се извиква, когато се изпълнява кастинг. За едни и същи типове данни източник и цел не можете да задавате оператора за преобразуване едновременно в явна и неявна форма.