最終更新日時(UTC):
が更新

履歴 編集

宣言時に要素数を指定した配列オブジェクトの、定義時の要素数を規定(C++11)

このページはC++11に採用された言語機能の変更を解説しています。

のちのC++規格でさらに変更される場合があるため関連項目を参照してください。

概要

staticメンバやexternとして宣言した配列を定義した際、宣言時に指定した要素数として定義されることが規定された。

extern int x[10];
struct S {
  static int y[10];
};

int x[];    // 要素数は10
int S::y[]; // 要素数は10

これが規定されるまでは、定義時の要素数は未規定だった。

参照