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

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

edrive.narod.ru
from edrive.narod.ru More from this publisher
13.01.2015 Views

}; 108 public: VComputers (AnsiString a, int b) { type = a; price = b; } VComputers (const VComputers &par) { type = "Macintosh"; price = par.price * 2; } void Out () { ShowMessage (type + " стоит " + AnsiString (price)); } void MainVComputers() { VComputers myCPU ("Intel Pentium", 990); VComputers yourCPU (myCPU); myCPU.Out (); yourCPU.Out (); } Здесь объект myCPU инициализируется через конструктор VComputers (AnsiString, int), а объект yourCPU – через конструктор VComputers (const VComputers &). Оба выводятся на экран функцией Out. В следующем примере производится перегрузка конструктора для сложения транспонированнной матрицы с числом: class VMatrixPlus { int i, j; double k, m[3][3]; public: double n[3][3]; VMatrixPlus (double a[][3]); VMatrixPlus (double c): k (c) {} VMatrixPlus operator ! (); VMatrixPlus operator + (VMatrixPlus c); void Out (); }; VMatrixPlus::VMatrixPlus (double a[][3]) { for (i=0; i

} 109 AnsiString temp; for (i=0; i

};<br />

108<br />

public:<br />

VComputers (AnsiString a, int b) { type = a; price = b; }<br />

VComputers (const VComputers &par) {<br />

type = "Macintosh"; price = par.price * 2;<br />

}<br />

void Out () { ShowMessage (type + " стоит " + AnsiString (price)); }<br />

void MainVComputers() {<br />

VComputers myCPU ("Intel Pentium", 990);<br />

VComputers yourCPU (myCPU);<br />

myCPU.Out ();<br />

yourCPU.Out ();<br />

}<br />

Здесь объект myCPU инициализируется через конструктор VComputers<br />

(AnsiString, int), а объект yourCPU – через конструктор VComputers (const<br />

VComputers &). Оба выводятся <strong>на</strong> экран функцией Out.<br />

В следующем примере производится перегрузка конструктора для сложения<br />

транспонированнной матрицы с числом:<br />

class VMatrixPlus {<br />

int i, j; double k, m[3][3];<br />

public:<br />

double n[3][3];<br />

VMatrixPlus (double a[][3]);<br />

VMatrixPlus (double c): k (c) {}<br />

VMatrixPlus operator ! ();<br />

VMatrixPlus operator + (VMatrixPlus c);<br />

void Out ();<br />

};<br />

VMatrixPlus::VMatrixPlus (double a[][3]) {<br />

for (i=0; i

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

Saved successfully!

Ooh no, something went wrong!