Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций.DOC
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
267.78 Кб
Скачать

Void swap (int &a, int &b)

{

int x; x=a; a=b; b=x;

}

Void main (void)

{

int m=10, n=20;

int &mm=m, &nn=n;

swap (mm, nn);

cout << “m=”<<m<<” n=”<< n;

}

результат:

m=20 n=10

Если в качестве аргумента функции используется массив, есть лишь один способ – передача его по ссылке. В качестве аргумента функции надо указать адрес начала массива:

Пример: даны два массива x1, x2, …, xn, y1, y2, …, yk. получить min (x1, x2, …, xn)/3+min (y1, y2, …, yk).

#include <iostream. h>

void vvod( float a[50], int b)

{ int i;

for (i=1; i<=b; i++)

{ cout<<”введите ”<< i <<”элемент массива”;

cin a[i];

}

}

float min (float a[50], int b)

{ float m; int i;

m=a[1];

for (i=1; i<=b; i++) if (a[i] < min) min= a[i];

return m;

}

void main (void)

{ float x[50], y[50]; int n, k;

cout <<”введите количество элементов массива х:”;

cin>>n;

cout <<”введите массив х:\n”;

vvod (x, n);

cout <<”введите количество элементов массива y:”;

cin>>k;

cout <<”введите массив y:\n”;

vvod (y, k);

cout << min(x,n)/3.+min(y,k);

}

Перегрузка функций

В программе можно использовать несколько функций с одним и тем же именем, которые могут отличаться количеством или типом параметров. Компилятор по количеству и типу параметров вызовет требуамую функцию. Предоставление компилятору выбора среди нескольких функций называется перегрузкой.

#include <iostream. h>

int add (int a, int b)

{ return (a+b); }

float add (float a, float b, float c)

{ return (a+b+c); }

Void main (void)

{

cout <<”100+200=”<<add(100, 200)<<endl;

cout <<”1.1+1.2+1.3=”<< add(1.1,1.2,1.3);

}

36