std::array<T,N>::fill

来自cppreference.com
< cpp‎ | container‎ | array
 
 
 
 
void fill( const T& value );
(C++11 起)
(C++20 起为 constexpr)

将定值 value 赋给容器中的所有元素。

参数

value - 要赋给元素的值

返回值

(无)

复杂度

与容器大小成线性。

示例

#include <array>
#include <cstddef>
#include <iostream>
 
int main()
{
    constexpr std::size_t xy = 4;
 
    using Cell = std::array<unsigned char, 8>;
 
    std::array<Cell, xy * xy> board;
 
    board.fill({0xE2, 0x96, 0x84, 0xE2, 0x96, 0x80, 0, 0}); // "▄▀";
 
    for (std::size_t count{}; Cell c : board)
        std::cout << c.data() << ((++count % xy) ? "" : "\n");
}

可能的输出:

▄▀▄▀▄▀▄▀
▄▀▄▀▄▀▄▀
▄▀▄▀▄▀▄▀
▄▀▄▀▄▀▄▀

参阅

将一个给定值复制赋值给一个范围内的每个元素
(函数模板)
将一个给定值复制赋值给一个范围内的 N 个元素
(函数模板)
以特定值向范围的各元素赋值
(niebloid)