Danh sách STL - [intNumber] làm gì?

Aug 29 2020

Tôi có một đoạn mã xác định danh sách từ STL. Tuy nhiên, có "[256]" này ở cuối trông giống như một khai báo mảng:

std::list<myStruct*> foo[256];

Tôi đã googled nó và mọi thứ dường như không

  • là một danh sách các mảng ( Điều đó không hoạt động trong C ++ )
  • giới hạn số phần tử của danh sách ( Có hàm max_size )

Vậy toàn bộ cấu trúc này là loại thùng chứa nào và [256] này làm gì trong bối cảnh này?

Trả lời

5 artm Aug 29 2020 at 14:03

Vậy toàn bộ cấu trúc này là loại thùng chứa nào và [256] này làm gì trong bối cảnh này?

std::list<myStruct*> foo[256];

foolà một mảng gồm 256 phần tử, mỗi phần tử là một danh sách các con trỏ tới myStruct.

Hãy nghĩ về nó giống như loại tích hợp thông thường int bar[256];và chỉ cần thay thế intbằngstd::list<myStruct*>