Параметри
на функции
* Формални параметри - параметри-променливи, декларират се при
дефиницията на функцията
* Фактически параметри - изрази за инициализация на параметрите-променливи,
задават се при извикване на функцията
Процедури
* Функция, която не връща стойност се нарича процедура.
* Процедура за отпечатване на обект от тип Time
#include <iostream>
#include <iomanip>
using namespace std;
#include "ccc_time.cpp"
void print_time(Time t)
/* PURPOSE:
Print a time in the format h:mm:ss
RECEIVES: t - the time to
print
*/
{ cout << t.get_hours() <<
":";
if (t.get_minutes() <
10) cout << "0";
cout << t.get_minutes()
<< ":";
if (t.get_seconds() <
10) cout << "0";
cout << t.get_seconds();
}
int main()
{ Time liftoff(7, 0, 15);
Time now;
cout << "Liftoff: ";
print_time(liftoff);
cout << "\n";
cout << "Now: ";
print_time(now);
cout << "\n";
return 0;
}
Параметри-псевдоними
* Параметър-псевдоним не е нова променлива, а псевдоним на съществуваща
променлива в извикващата функция.
#include <iostream>
using namespace std;
#include "ccc_empl.cpp"
void raise_salary(Employee& e, double
by)
/* PURPOSE:
Raise an employee salary
RECEIVES: e - employee receiving
raise
by - the percentage of the raise
*/
{ double new_salary = e.get_salary()
* (1 + by / 100);
e.set_salary(new_salary);
}
int main()
{ Employee harry("Hacker, Harry",
45000.00);
raise_salary(harry, 5);
cout << "New salary:
" << harry.get_salary() << "\n";
return 0;
}