13.01.2015 Views

Объектно-ориентированное программирование на С++ - eDrive

Объектно-ориентированное программирование на С++ - eDrive

Объектно-ориентированное программирование на С++ - eDrive

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

}<br />

101<br />

VList a (3);<br />

// конструктор класса VList<br />

a.Add (&x); a.Add (&y); a.Add (&z);<br />

ShowMessage ("Поступили:\nЭВМ–Це<strong>на</strong>\n\n" + a.Out ());<br />

a.Delete (&y);<br />

ShowMessage ("Остались:\nЭВМ–Це<strong>на</strong>\n\n" + a.Out ());<br />

Инициализация объектов класса может проводиться не только с помощью<br />

операторов в теле конструктора, но и посредством списка инициализации<br />

(initialisation list). Такой список помещают через двоеточие вслед за заголовком<br />

конструктора.<br />

Конструктор, не требующий аргументов, <strong>на</strong>зывается конструктором<br />

по умолчанию (default constructor), или параметризованным конструктором.<br />

Это может быть конструктор с пустым списком параметров или конструктор,<br />

в котором части объявления параметров, завершающей список, присвоены<br />

з<strong>на</strong>чения.<br />

Следующий пример сложения матрицы с числом демонстрирует инициализацию<br />

списком и работу конструктора по умолчанию:<br />

class VMatrix {<br />

int i, j;<br />

AnsiString temp;<br />

float m[3][3], k;<br />

public:<br />

VMatrix (float a[][3], float c = 1);<br />

void Out ();<br />

};<br />

VMatrix::VMatrix (float a[][3], float c): k(c) {<br />

for (i=0; i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!