2017-06-17 16 views
6

Liệu std::array<bool> có thực hiện cùng một tối ưu hóa bộ nhớ đóng gói bit mà std::vector<bool> không?Hành vi của std :: mảng <bool> so với tiêu chuẩn :: vector <bool>

Cảm ơn!

+8

Không, không. –

+0

Ngay cả các tiêu chuẩn commitee [đã học về những sai lầm của họ] (https://howardhinnant.github.io/onvectorbool.html) ;-) – zett42

+0

@NeilButterworth tại sao? Tại sao đây không phải là biểu diễn hợp lệ của 'mảng '? http://coliru.stacked-crooked.com/a/6a2087c3125e0f52 –

Trả lời

7

Không, std::array không có chuyên môn cho bool loại.

Bạn có thể tìm thêm chi tiết here, nhưng, về cơ bản, std::array chỉ là một:

một loại tổng hợp với ngữ nghĩa giống như một cấu trúc tổ chức một mảng C kiểu T [N]

và trong trường hợp bool, bạn có thể coi nó là một mảng kiểu b của các bool, không phải bất kỳ loại bitet nào.

+0

Cảm ơn bạn! –

+0

@ClioCallida Bạn được chào đón :) –

Các vấn đề liên quan