Tôi có một lớp generics mà tôi đã sử dụng để ghi dữ liệu vào IsolatedStorage.C# tạo một chuyển đổi ngầm cho lớp chung?
tôi có thể sử dụng một static implicit operator T()
để chuyển đổi từ lớp Generic tôi vào Generic Parameter T
ví dụ
MyClass<double> foo = new MyClass(187.0);
double t = foo;
Câu hỏi của tôi là, làm cách nào tôi có thể làm ngược lại?
MyClass<double> foo = new MyClass(187.0);
double t = 0.2d;
foo = t;
Toán tử tiềm ẩn phải tĩnh, vì vậy tôi không chắc chắn cách tôi có thể vượt qua trong trường hợp của lớp học?
Bạn định nghĩa toán tử ngầm thứ hai như thế nào? Nó sẽ trông giống như một hình ảnh phản chiếu đầu tiên (với các loại được đảo ngược). Điều đó không hoạt động? –
Nó hoạt động, nhưng tôi đã hy vọng sử dụng một phương thức lớp, thay vì xây dựng một đối tượng mới. – Alan
ok, nhưng vâng, không hoạt động theo cách đó. Loại chuyển đổi phải luôn tạo ra một thể hiện mới của một loại. (và thực sự, những loại đó sẽ không thay đổi) –