struct Test
{
static const int value = []() -> int { return 0; }();
};
Với gcc-4.6 Tôi nhận được một cái gì đó như, error: function needs to be constexpr
. Tôi đã thử nhiều kết hợp đặt constexpr
ở những nơi khác nhau, nhưng không may mắn.Có phải constexpr được hỗ trợ với các hàm/biểu thức lambda không?
Có phải constexpr
cũng được hỗ trợ cho chức năng lambda (không phân biệt return
loại được chỉ định hay không)? Cú pháp chính xác là gì?
Mọi công việc xung quanh đều có thể?
Trong hoàn cảnh nào sẽ một 'chức năng lambda constexpr' có ích? Dường như với tôi như nó sẽ chỉ kết thúc thêm một cặp niềng răng xung quanh biểu hiện thực tế – bdonlan
@bdonlan, tôi có một trường hợp sử dụng cho rằng (để tính toán số '__VA_ARGS__' trong vĩ mô). Nhưng giải thích rằng đó sẽ là một câu hỏi hoàn toàn mới. – iammilind
Cũng thấy [Tại sao các biểu thức lambda không được phép trong một toán hạng không được đánh giá nhưng được cho phép trong các phần không được đánh giá của các biểu thức không đổi?] (Http://stackoverflow.com/q/22232164/1708801) –