align="justify">
destructor Destroy;
override; end;
destructor TDescendant. Destroy;
begin
inherited;
end;
У мові C + + не потрібно викликати конструктор і деструктор предка, деструктор повинен бути віртуальним. Деструктори предків викликаються автоматично. Щоб викликати метод предка, потрібно явно викликати метод:
class Ancestor
{:
virtual void function1 () {printf (В«Ancestor: function1В»);}
};
Descendant: public Ancestor
{: void function1 () {(В«Descendant: function1В»);: function1 ();// тут буде надруковано В«Ancestor: function1В»
}
};
Для виклику конструктора предка потрібно вказати конструктор:
class Descendant: public Ancestor
{:
Descendant (): Ancestor ();
};
Завдання 2
Значення аргументу х змінюється від а до b з кроком h. Для кожного x знайдіть значення функції Y (x) суми S (x) і | Y (x) - S (x) | і виведіть у вигляді таблиці. Значення a, b, h введіть з клавіатури довільно. Обчислення Y (x) і S (x) реалізуйте у вигляді функцій. p align="justify"> В основній програмі організуйте введення вихідних даних, звернення до функцій і виведення результатів.
В
Текст програми
# include
# include
# include
# include
# pragma hdrstop
# include В«Unit2.hВ»
# pragma package (smart_init) double (* TFun) (double); funY (double); funS (double); funDYS (double); Out_Tabl (TFun, double, double, double); main ()
{a, b, h; (В«Input a, b, hВ»); (В«% lf% lf% lfВ», & a, & b, & h); ( В« n t Function - Y (x)В»); _Tabl (funY, a, b, h); (В« n t Function - S (x)В»); _Tabl (funS, a, b, h) ; (В« n t Function - | S (x) - Y (x) |В»); _Tabl (funDYS, a, b, h); (В« n Press any key ...В»); (); p>
} funY (double x)
{cos (x);
}
funS (double x)
{s = 1, a = 1; (int k = 1; k <= 20; k + +)
{=-a * x * x/((2 * k-1) * (2 * k)); + = a;
} s;
}
funDYS (double x)
{fabs ...