Chức năng của tôi trả về một số giá trị dài có chứa hai giá trị trong 32 bit thấp hơn và cao hơn.Tại sao tôi không thể lấy được từ lâu?
Tôi nghĩ cách tốt nhất để xử lý giá trị trả lại là lấy được loại tùy chỉnh của tôi từ lâu và cung cấp các bộ mở rộng loại như GetLowerValue(), GetHigherValue().
Vấn đề là .NET không cho phép để lấy được từ lâu
Nếu bạn biên dịch rằng
public class SubmitOrderResult : long
{
}
bạn nhận được:
cannot derive from sealed type 'long'
Tại sao mà thiết kế sao và làm thế nào có thể vượt qua nó?
Cảm ơn
Phương pháp mở rộng +1 chắc chắn là cách để đi trong trường hợp này. – James
Phải. Vì vậy, tôi sẽ đi cho phần mở rộng. Những gì tôi không thích về phần mở rộng là tôi sẽ mở rộng một loại dài phổ biến mà có thể không nhất thiết phải là "của tôi" dài và không chứa hai giá trị trong đó. Tạo ra một loại mới sẽ an toàn hơn. –
@ James: Tôi bằng cách nào đó nghi ngờ rằng ... một loại khác biệt có vẻ thích hợp hơn nhiều. –