Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Примеры неоднозначности при перегрузке функций. (л.11)

Перегрузка функций. Примеры перегрузки функций. (л.11)

Пример функции, получающей в качестве параметра и возвращающей значения перечислимого типа. (метод. указ. к лаб.работе 3)

Функции с переменным числом аргументов. (л.10)

Функции с параметрами по умолчанию. (л.10)

Встраиваемые функции (inline-функции). (л.10)

Модификатор const. Его назначение при передаче параметров в функцию по указателю и по ссылке.(л.10)

Использование в функции локальных статических переменных. (л.10)

Использование ссылки в качестве типа возвращаемого функцией значения. (л.10)

С какой целью к составным данным применяют способ передачи параметров по ссылке даже в том случае, если они не являются результатами, возвращаемыми функциями. Что необходимо предпринять, чтобы случайное изменение формального параметра в функции не изменило значение аргумента (л.10)

14. Объяснить ошибку (л.10):

double *p = new double;

double& ref = *p;

ref = 1.0;

delete p;

ref = 1.5;

21. *Обработка завершения программы с помощью функции atexit(). (л.10)

23. Указать и объяснить ошибку, если она есть (л.10):

void f(const int* p)

{*p = 17;

int i = 29;

p = &i;

}

int i = 17; // в main

f(&i);

 

void f(const int& p)

{p = 17;

}

int i = 17; // в main

f(i);

 

void f(const int& p)

{int i = 29;

p = i;

}

int i = 17; // в main

f(i);

 

void f(int*);

int i = 17; // в main

const int* p = &i;

f(&i);

 

void f(int*);

int i = 17; // в main

const int* p = &i;

f(p);

 

void f(int*);

int i = 17; // в main

const int* p = &i;

const int j = 29;

f(&j);

 

24. Какие типы возвращаемых значений недопустимы для функций? (л.10)

25. Установить область действия идентификаторов (л.10):

int cube(int y);

void main() {

int y;

for (int x=1; x<=10; x++)

cout<<cube(x)<<endl;

y=cube(x)*cube(x);

}

int cube(int e) {return e*e*e;}

________________________________________________________________________________________________________________________________________________________

28. Указать возможность вызова функций (л.11):

extern void manip(int);

int main()

{

manip('a');

return 0;

}

 

extern void print(int);

unsigned char uc;

print(uc);

 

extern void ff(int);

extern void ff(char);

enum Stat (Fail, Pass);

int main() {

ff(Pass);

ff(0);

}

 

29. Объяснить вызов перегруженных функций (л.11):

enum e1 { a1, b1, c1 };

enum e2 { a2, b2, c2=0x80000000 };

string format(int);

string format(unsigned int);

int main() {

format(a1);

format(a2);

return 0;

}

 

30. Объяснить ошибки при вызове перегруженных функций (л.11):

float f(float i);

double f(double i);

int main()

{

float x=10.09f;

double y=10.09;

cout << f(x) <<endl;

cout << f(y) <<endl;

cout << f(10) <<endl;

_getch();

return 0;

}

 

 

int f(int a);

int f(int a, int b=1);

int main()

{

cout << f (10, 2) << endl;

cout << f (10) << endl;

_getch();

return 0;

}

 

int f(int a, int b);

int f(int a, int& b);

int main()

{

int ix=5, iy=10;

cout << f (ix, iy) << endl;

_getch();

return 0;

}

31. *Какие возможности предоставляет неиспользуемый формальный параметр в функции? (л.10)

 

32. Указать и объяснить ошибку, если она есть (л.10):

void swap(int* p, int* q);

void swap(int* p, int* q, int);

int main ()

{

int x=2;

int y=5;

swap(&x, &y, 5);

cout << x << " " << y << endl;

_getch();

return 0;

}

void swap(int* p, int* q, int)

{

int t = *p;

*p = *q;

*q = t;

}

void swap(int* p, int* q)

{

int t = *p;

t += *q;

*q = t;

}

<== предыдущая лекция | следующая лекция ==>
Особенности передачи параметров в функцию по ссылке. (л.10) | II. Расчет учебного времени
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 380; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.