Ngoài sự hữu ích đáng ngờ về vấn đề này, tôi muốn hỏi liệu có thể làm điều gì đó dọc theo những dòng này hay không.Tùy chỉnh nguyên thủy trong C#?
class MyPrimitive {
String value;
public String Value {
get { return value; }
set { this.value = value; }
}
}
// Instead of doing this...
MyPrimitive a = new MyPrimitive();
a.Value = "test";
String b = a.Value;
// Isn't there a way to do something like this?
MyPrimitive a = "test";
String b = a;
Tôi thích quấn loại nguyên thủy vào các lớp tùy chỉnh sử dụng một tài sản để làm cho get
và set
phương pháp thực hiện những thứ khác, như xác nhận.
Vì tôi đang làm điều này khá thường xuyên, tôi nghĩ rằng nó sẽ được tốt đẹp để cũng có một cú pháp đơn giản, giống như cho các nguyên thủy chuẩn.
Tuy nhiên, tôi nghi ngờ rằng điều này không chỉ không khả thi mà còn có thể sai về mặt khái niệm. Mọi thông tin chi tiết sẽ được chào đón nhiều nhất, cảm ơn.
Đây chính là điều người hỏi đang tìm kiếm. Nó không chính xác là một "nguyên thủy tùy chỉnh", nhưng nó bắt chước một cái cũng như có thể, và là con đường đúng đắn để đi vào C#. – Noldorin
Nếu bạn làm cho nó một cấu trúc, bạn nên ** hoàn toàn ** làm cho nó bất biến cùng một lúc; có một {get; set;} trên một cấu trúc là một ý tưởng rất, rất tồi. Tôi đã đề cập đến sự xấu xa? –
Hoàn toàn đồng ý, xin lỗi vì sự nhầm lẫn. Ban đầu tôi đã sai, cố gắng bắt chước ví dụ của anh ấy càng chặt chẽ càng tốt. –