私はblogに次のテンプレートを見つけました:配列サイズのメタ関数 - どこかでブーストになっていますか?
template <typename T, size_t N>
struct array_info<T[N]>
{
typedef T type;
enum { size = N };
};
それはsizeof(a)/sizeof(a[0])
にエレガントな代替手段です。
配列のサイズを取得するために一般的に使用される構造体は、必ずライブラリのどこかにあるべきです。私はそれを知らない。誰でもこの機能が標準ライブラリのどこかにあるか、Boostにあると私に伝えることができますか?好ましくは、使い易くかつ軽量な形態であること。
標準の関数 '_countof'(テンプレートバージョンが必要です)がありますが、現時点で適切なヘッダーが見つかりません。 – Vlad
代わりにstd :: arrayを使用してください。 –