Herb Sutters đã đề cập đến các mẫu bị ràng buộc (a.k.a. Các khái niệm Lite) trong bài nói chuyện: Modern C++: What You Need to Know.Mẫu bị hạn chế là gì?
Tôi biết rằng tăng có gói khái niệm ở mọi lứa tuổi, cho phép một thông báo lỗi in đẹp, khi cơ chế khấu trừ mẫu không tìm thấy toán tử, chức năng hoặc có mẫu vi phạm truy cập.
Tôi đã gặp phải các đề cập trên số isocpp blog rằng đã có chi nhánh thử nghiệm là gcc triển khai document proposing Concepts Lite. Tuy nhiên, nhìn qua C++14 draft hiện tại, tôi không thể tìm thấy bất kỳ gợi ý nào cho dù điều này sẽ là một phần của C++14
.
Vì vậy, những câu hỏi rất đơn giản:
- sẽ Concepts Lite là một phần của C++ 14? (Tham khảo trong tiêu chuẩn ưa thích. Tôi không thể tìm thấy một, và tôi không phải là rất quen thuộc với các tiêu chuẩn.)
- cú pháp chính xác của nó là gì? (Đề xuất và trang trình bày của Herb phân tán ở đây và tôi không biết cái nào được cập nhật nhiều hơn)
- bạn có thể đưa ra một ví dụ tối thiểu về ràng buộc (biến vị ngữ) và một mẫu bị ràng buộc không?
LƯU Ý: nếu bạn chờ đợi đủ lâu tôi sẽ cố gắng để có được những gcc chi nhánh hoạt động và ít nhất có thể nói bất cứ điều gì về việc thực hiện thí điểm, trong đó tuy nhiên không bao hàm tính chính xác của cú pháp.
* Liệu khái niệm Lite có phải là một phần của C++ 14 không? (Tham khảo trong tiêu chuẩn được ưa thích * Cái gì? Không có chuẩn C++ 14 nào cả. Dù sao, không, chúng sẽ không ở trong C++ 14. Tôi sẽ cố gắng tìm một số tham khảo/thảo luận .. – dyp
[Đề nghị] (http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3580.pdf) giải thích khá tốt, không phải là làm cho câu hỏi này trở nên bất hợp pháp, không phải ai cũng muốn đọc 30 trang. – David
[Stroustrup nói trên trang chủ của anh ấy] (http://www.stroustrup.com/C++11FAQ.html#what-concepts) rằng chúng sẽ kết thúc dưới dạng TR tới C++ 14. Không chắc chắn cách thức up- – dyp