Isi kandungan:
Definisi - Apa maksud Pengendali Penukaran?
Pengendali penukaran, dalam C #, adalah operator yang digunakan untuk mengisytiharkan penukaran pada jenis yang ditentukan pengguna supaya objek jenis itu boleh ditukarkan kepada atau dari jenis atau jenis asas yang ditentukan pengguna. Dua jenis penukaran yang ditakrifkan pengguna termasuk penukaran tersirat dan eksplisit.
Secara umum, pengendali penukaran eksplisit dan tersirat menyediakan keupayaan untuk kelas untuk dibuang ke jenis data lain yang mungkin.
Pengendali penukaran yang eksplisit mesti dipanggil dengan pelakon dan digunakan apabila penukaran harus dilihat oleh pengguna pengendali. Ia digunakan dalam ungkapan cast dimana kedua-dua jenis data tidak serasi sepenuhnya dan oleh itu memerlukan pengendali pemutus.
Pengendali penukaran tersirat mudah digunakan. Ia tidak memerlukan sintaks khas dan ia meningkatkan kebolehbacaan kod. Ia juga membantu kelas untuk menukar data jenis data kepada jenis yang serasi tanpa pemutus jenis. Pelakon tersirat perlu digunakan dalam situasi seperti penyerahan dan tugasan anggota fungsi, di mana tidak ada risiko kehilangan data atau berlakunya pengecualian.
Techopedia menerangkan Operator Penukaran
Penukaran implikasinya boleh ditakrifkan untuk kelas menggunakan kata kunci "tersirat" bersama dengan kata kunci "pengendali". Operasi penukaran eksplisit boleh ditakrifkan untuk kelas menggunakan kata kunci "eksplisit" bersama dengan kata kunci "operator". Kedua-dua penukaran mesti ditakrifkan sebagai statik.
Contohnya, kelas, RomanNumeral, boleh ditakrifkan dengan dua operator penukaran. Pengendali penukaran tersirat boleh ditakrifkan untuk menukar dari kelas RomanNumeral kepada rentetan untuk memaparkan nombor dalam bentuk angka Rom; pengendali penukaran eksplisit boleh ditakrifkan untuk melaksanakan penukaran dari kelas RomanNumeral ke integer.
Penukaran jenis kelas ke objek jenis atau antara muka tidak dibenarkan. Begitu juga untuk penukaran dari kelas asas kepada kelas yang berasal dari kelas asas.
Untuk kelas tertentu, kedua-dua operator eksplisit dan tersirat tidak boleh ditentukan untuk penukaran dari jenis yang sama kepada yang lain.
Penjagaan harus diambil untuk memastikan penukaran tersirat tidak mengakibatkan kehilangan atau pengecualian data. Sekiranya terdapat alasan yang sah untuk membuang pengecualian, penukaran itu mestilah jenis eksplisit.
Takrif ini ditulis dalam konteks C #