Программирование >>  Расширенная версия языка c++ 

1 ... 174 175 176 [ 177 ] 178 179 180 ... 227


Приложение В. Ответы на вопросы и решения упражнений 537

for(1=0; i<24; i++)

cout

gotoxyd, 2) ;

itiyclreol ();

gotoxyd, 4) ;

myclreol(20);

return 0;

Стирание строки на величину, заданную параметром len

void inyclreol {

int x, у; . .. - . . .. .

x ех () ; получение положения по х у еу(); получение жения по у

if(len = -1) len = 80 - x;

int i = x;

cout

gotoxy(x); установка курсора

4. Аргумент по умолчанию не может быть другим параметром или локальной переменной.

1. #include <iostream>

using namespace std;

in (int a, int b)

return a - b;

floa float a, float b)

return a - b;

int main {

int t*pl) (int, int} ;



535 Самоучитель C++

float (*р2) (float, float);

pi = dif; аес функции dif(int, int)

p2 = dif; адрес функции dif(float, float)

cout pi (10, *;

cout p2(10.5, 8.9} \n;

return 0;

Проверка усвоения материала главы 5

1. Перегрузка конструктора () для параметра типа time ;:

ttinclude <iostream>

ttinclude <cstdio> заголовок включен для функции sscanfCi ttinclude <ctime>

using

class date I

int day, month, year; public:

date (char*str) ; .

date (in-., int d, int y) I 1

day = d;

month = m;

year = y;

Перегрузка конструктора для параметра типа tiitie t date (tiine t t) ;

void I

cout month 7 day /;

cout year

*str)

sscanf (str, %dl*c%d%*c%d , fimonth, &day, syear);

struct tm *p;

p = localtime(St); day = p -> tm mday; month = p -> tin mon;



Приложение ВА)тветы на вопросы и решения упражнений 539 year = р -> tni year; .1;., ...

int main()

/ / ование даты с помощью строки date sdat6( l-l/l/92 ) ;

/ / Образование даты с помощью трех цел1х

date laaUfcti, 1, 92) ; i

/* Образование даты с помощью параметра тип toe t, что ведет к созданию объекта, использующего системную дату

date tdate (time(NULL) ) ;

sdate.show О; idate.showO ;

tdate.show() ;

return 0;

2. В классе samp определен только один конструктор - конструктор с параметром. Поэтому нельзя объявлять объект типа samp без параметра. (То есть инструкция samp x - это неправильное объявление.)

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

4. Ниже представлена основная форма конструктора копий:

имя класса (const иж класса бъвкт) { тело 1соысару*тора

5. Конструктор копий вызывается, когда имеет место инициализация, а именно: когда один объект явно используется для инициализации другого, когда объект передается в функцию в качестве параметра, когда создается временный объект при возвращении объекта функцией. , .- .

6. Ключевое слово overload является устаревшим. В ранних версиях C++ оно информировало компилятор о том, что функция будет перегружена. В современных компиляторах это ключевое слово не поддерживается.



1 ... 174 175 176 [ 177 ] 178 179 180 ... 227

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика