Chuyển tới nội dung chính

std::array::fill

#include <array>

void fill (const value_type& val);

Gán một giá trị cụ thể cho tất cả các phần tử trong mảng.

Tham số

val

  • Giá trị muốn gán cho tất cả các phần tử của mảng.
  • Là tham chiếu hằng const, kiểu value_type.

Giá trị trả về

Không có giá trị trả về

Đặc điểm

  1. Độ phức tạp: O(n), trong đó n là số phần tử của mảng.
  2. Mảng không thay đổi kích thước: fill() chỉ gán giá trị cho các phần tử hiện có trong std::array. Kích thước mảng đã cố định khi khai báo và không bị ảnh hưởng.
  3. Hiệu quả: Nếu số lượng phần tử lớn, fill() được tối ưu hóa để thực thi nhanh hơn so với gán thủ công từng phần tử trong vòng lặp.
  4. Tương thích kiểu dữ liệu: Giá trị val phải cùng kiểu (hoặc có thể chuyển đổi hợp lệ) với kiểu của các phần tử trong std::array.

Ví dụ

#include <iostream>
#include <array>

int main() {
std::array<int, 5> arr; // Mảng gồm 5 phần tử kiểu int
arr.fill(10); // Gán tất cả phần tử giá trị 10

// In ra các phần tử
for (const auto& elem : arr) {
std::cout << elem << " ";
}
return 0;
}

#include <iostream>
#include <array>
#include <string>

int main() {
std::array<std::string, 3> arr;
arr.fill("Hello"); // Gán chuỗi "Hello" cho tất cả phần tử

for (const auto& str : arr) {
std::cout << str << " ";
}
return 0;
}

Các hàm liên quan

dataTrả về con trỏ trỏ tới phần tử đầu tiên của vùng lưu trữ bên trong mảng std::array