CppDS.com

C++ 98 11 14 17 20 手册

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

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

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

参数

value - 要赋给元素的值

返回值

(无)

复杂度

与容器大小成线性。

示例

#include <array>
#include <iostream>
 
int main()
{
    constexpr int 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 (unsigned i = 0; i != board.size();) {
        std::cout << board[i].data();
        if ((++i % xy) == 0) {
            std::cout.put('\n');
        }
    }
}

输出:

▄▀▄▀▄▀▄▀
▄▀▄▀▄▀▄▀
▄▀▄▀▄▀▄▀
▄▀▄▀▄▀▄▀
关闭