Ngôn ngữ Rust có hỗ trợ các giá trị không đổi trong mã chung tương tự như cách C++ không? Dường như ngôn ngữ overview không quảng cáo. Các kiểu tham số với các hằng số trong C++ cho phép tạo các đối tượng với các bộ đệm có kích thước khác nhau tùy thuộc vào nhu cầu của khách hàng (các kiểu như stlsoft :: auto_buffer).
Nếu không, thì các phương pháp hay nhất để thực hiện các thiết kế tương tự trong Rust là gì?Giá trị không đổi trong các tướng Rust
7
A
Trả lời
8
Không, điều này không được hỗ trợ theo cách an toàn. Chúng ta sẽ cần các chữ số kiểu chữ, như GHC gần đây đã được thêm vào, cho điều đó.
Tuy nhiên, bạn có thể sử dụng các macro Rust. Với macro, bạn có thể tạo "mẫu" được tham số hóa trên các biểu thức tùy ý, bao gồm các hằng số, cho phép bạn thực hiện những gì bạn muốn ở đây. Lưu ý rằng bạn có thể tìm thấy các lỗi và giới hạn trong hệ thống macro nếu bạn thử điều này tại thời điểm này.
Các vấn đề liên quan
- 1. Truy cập các giá trị enum trong Rust
- 2. Ổ cắm trong Rust
- 3. Chia sẻ các biến có thể thay đổi giữa các chủ đề trong Rust
- 4. Các loại giá trị không thể thay đổi
- 5. Ruby không có giá trị không đổi?
- 6. Thay đổi các giá trị trong NSArray bằng dereferencing?
- 7. Trao đổi các khóa và giá trị trong một băm
- 8. Chuyển đổi/truy cập các giá trị QueryString trong ASP.NET
- 9. Xdt chuyển đổi các giá trị bên trong
- 10. Mảng/vectơ đúc/đúc trong Rust
- 11. Thay đổi giá trị bên trong vòng lặp foreach không thay đổi giá trị trong mảng được lặp qua
- 12. Giá trị không đổi trong biểu thức điều kiện
- 13. Hoán đổi giá trị cột trong MySQL
- 14. Các đối tượng và lớp học trong Rust
- 15. Android - Thay đổi giá trị trong strings.xml
- 16. thay đổi giá trị const trong C
- 17. Thay đổi một giá trị trong SQLite3
- 18. giá trị thay đổi trong HashSet
- 19. giá trị được chọn không thay đổi trong asp: DropDownList
- 20. Logging chương trình Rust
- 21. Có thể đóng cửa đệ quy trong Rust không?
- 22. Chuyển đổi enums đến mảng các giá trị (Đưa tất cả các giá trị trong một mảng JSON)
- 23. app.config không được lưu các giá trị
- 24. Thủ tướng: Triển khai LazyDataModel
- 25. Giá trị thay đổi SQL
- 26. chuyển đổi giá trị kép thành giá trị nhị phân
- 27. Giá trị gửi loại đầu vào HTML mà không sửa đổi giá trị bài đăng?
- 28. Thay đổi giá trị max_heap_table_size?
- 29. Tại sao các giá trị không thể chuyển đổi thành chuỗi trong C#?
- 30. kích hoạt cho các giá trị chỉ thay đổi
Macro có vẻ giống người ngoài hành tinh so với ngôn ngữ chính. Có một phòng còn lại cho các biểu thức thời gian biên dịch là các thông số bình thường của hàm trong tương lai Rust không? – tivadj
Tôi muốn parametrize một loại trên một chức năng. Làm như vậy với các macro sẽ yêu cầu chức năng respecification của hàm tại hầu hết các trang gọi. Ngoài ra, tôi có thể "lưu trữ" hàm này dưới dạng "giá trị" ở nhiều vị trí khác nhau trong cấu trúc để có thể truy cập được. Vì vậy, parametrization trên các giá trị sẽ được thực sự tốt đẹp! – dhardy
Các giải pháp cho vấn đề của tôi không phải là parametrize qua một chức năng nhưng để làm như vậy trên một loại (có thể là một cấu trúc rỗng) thực hiện một đặc điểm nhất định. Về lý thuyết ít nhất; Tôi hoặc trình biên dịch có vấn đề với sự phức tạp của nó. – dhardy