Trong các chương trước ta được học về cách chuyển đổi giá trị giữa những kiểu dữ liệu cơ bản. chúng ta cũng đã học hai cách ép kiểu là : - Không tường minh (Implicit) - Tường minh (Explicit) Vì c# cho phép ta định nghĩa những lớp và cấu trúc riêng,do đó ta cũng muốn có những cách thức mà cho phép ta chuyển đổi giữa những loại dữ liệu của riêng ta. | Những chủ đề tiến bộ trong C Các ép kiểu do người dùng định nghĩa - Phần 1 Trong các chương trước ta được học về cách chuyển đổi giá trị giữa những kiểu dữ liệu cơ bản. chúng ta cũng đã học hai cách ép kiểu là - Không tường minh Implicit - Tường minh Explicit Vì c cho phép ta định nghĩa những lớp và cấu trúc riêng do đó ta cũng muốn có những cách thức mà cho phép ta chuyển đổi giữa những loại dữ liệu của riêng ta. C cho phép làm điều chế của nó là ta có thể định nghĩa một ép kiểu như là một thao tác thành viên của một trong những lớp thích hợp. việc ép kiểu phải được đánh dấu là implicit hoặc explicit để chỉ định cách mà bạn muốn sử dụng với nó. cũng giống như việc ép kiểu cơ bản nếu bạn biết việc ép kiểu là an toàn dù là bất cứ giá trị nào đựợc giữ bởi biến nguồn thì bạn định nghĩa nó như là lại nếu bạn biết việc ép kiểu có thể đi đến sự liều lĩnh - mất dữ liệu hay một biệt lệ sẽ bị tung ra -bạn nên định nghĩa ép kiểu như là explicit. Bạn nên định nghĩa bất kỳ kiểu ép kiểu mà bạn viết là tường minh nếu có bất kì giá trị dữ liệu nguồn nào mà việc ép kiểu có khả năng thất bại hoặc nếu có sự mạo hiểm do một biệt lệ được tung ra. Cú pháp của việc định nghĩa ép kiểu cũng giống như việc overload thao tác . không phải ngẫu nhiên mà ta nói thế bởi vì theo cách mà ép kiểu được xem như là thao tác là tác động của nó là chuyển từ kiểu dữ liệu nguồn sang kiểu dữ liệu đích. để minh hoạ cho cú pháp này cú pháp sau được lấy từ ví dụ mà sẽ được giới thiệu sau đây trong phần này public static implicit operator float Currency value xử lí Đoạn mã này là một phần của cấu trúc - currency - được dùng để lưu trữ kiểu được định nghĩa ở đây cho phép chúng ta chuyển đổi 1 cách ẩn dụ giá trị của 1 kiểu tiền tệ sang 1 số thực float . chú ý rằng nếu việc chuyển được khai báo như là implicit thì trình biên dịch cho phép nó sử dụng cả implicit và explicit. nêu nó được khai báo như là explicit thì trình biên dịch chỉ cho phép nó sử dụng như là explicit. Trong khai .