Инициализировать массивы
Если класс имеет конструктор, массивы этого класса инициализированы конструктором.Если в инициализаторе меньше элементов, чем список элементов в массиве, конструктор по умолчанию, используемые для остальных элементов., Если не задан конструктор по умолчанию для класса, то список инициализации должен быть завершен, то есть должен быть один инициализатор для каждого элемента в массиве.
Рассмотрим Point класс конструктора, определяющий 2:
// initializing_arrays1.cpp
class Point
{
public:
Point() // Default constructor.
{
}
Point( int, int ) // Construct from two ints
{
}
};
// An array of Point objects can be declared as follows:
Point aPoint[3] = {
Point( 3, 3 ) // Use int, int constructor.
};
int main()
{
}
первый элемент aPoint выполняет построение с помощью конструктора Point( int, int ); оставшиеся 2 элемента создаются с помощью конструктора по умолчанию.
Массивы статического члена (ли Const или, не) может быть инициализировано в своих определениях (вне объявления класса).Примеры.
// initializing_arrays2.cpp
class WindowColors
{
public:
static const char *rgszWindowPartList[7];
};
const char *WindowColors::rgszWindowPartList[7] = {
"Active Title Bar", "Inactive Title Bar", "Title Bar Text",
"Menu Bar", "Menu Bar Text", "Window Background", "Frame" };
int main()
{
}