C++ での配列の大きさの求め方2024年01月16日 11時55分59秒

C++ での、配列の大きさを求める方法が進化している。How do I find the length of an array? にまとめられている。

C 言語や早期の C++ での求め方は、sizeof を利用。

sizeof( array ) / sizeof( array[ 0 ] )

C++17 で iterator ヘッダに新しい関数が実装されている。

std::size()

constexpr を用いるとテンプレートを用いれば求める事が出来るらしい。

template< class T, size_t N >
constexpr size_t size( T ( & )[ N ] ) { return N; }

C++20 では更に、新しい関数が標準化された様だ。

std::ssize()