Cơ thể của định nghĩa khái niệm hay yêu cầu bối cảnh không được đánh giá theo khối? ví dụ. thế nào tôi có thể sử dụng std::declval
một cách an toàn?Cơ thể có yêu cầu chặn ngữ cảnh không được đánh giá không?
template<typename T>
concept bool SomeConcept = requires(T a) {
{ a.someFunction(std::declval<int>()) } -> int;
};
Cảm ơn Barry! Bằng cách này, có bất kỳ lợi thế khác để nhận được biến hơn là cú pháp dễ đọc hơn? Nó chỉ là thực hành tốt hơn hay có một số cạm bẫy mà tôi nên biết? –
@GuillaumeRacicot Có lẽ hơi sớm để nói về thực hành tốt hơn. Cá nhân, tôi muốn tránh tất cả các khái niệm meta-lập trình meta trước khi có thể. – Barry