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

1 ... 172 173 174 [ 175 ] 176 177 178 ... 227


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

Упражнения

1. tinclude <iostream>

tinclude <cstring> .

(tinclude <cstdlib>

using namespace std;

clas type {

char *p;

int len; public:

strtype();

,strtype(char *s, int 1);

char { return }

,int getlengthO { return len; }

strtype; .-strtype () {

p new if(!p) {

cout Обка выделения памяти\п ; exit(l);

*p 0; нулевая строка

len = 255;

Strtype::strtype(char *s, int 1)

if(strlen(3) >= 1) {

cou Выделено слком мало памяти!\n ; exit (1) ;

}

p = ne ar[ 1 ]; if(!p) {

cout Сшибка выделения ламяти\п ; exit (1) ;

strcpy(p, s); len = 1;

int main



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

-----,- - -

( -ьу . л.-т:

strtype si;

strtype s2 ( Это оверка , 100);

cou Строка si.getstring - Длиной: ;.

cout

cou Строка s2 tring О -Длиной: \

cout

return 0;

2. Имитация секундомера tinclude <iostream> finclude <ctirae>

using namespace

class stopwatch I ; .

double begin, end; public:

stopwatch (); . - r -

stopwatch (cloc)< t t);

~stopwatch();

void start

void stop 0 ; - -

void ShowO ;

stopwatch: :stopwatch 0

begin = end - 0.0; 1 .... .TV

{ .

begin = (double) t /

end =0.0;

stopwatch::-stopwatch{}

!

cou Удаление объекта stopwatch ... ; show() ;

void stopwatch: : start ()

begin = (double) clOclcO / CLOCKS PER SEC;



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

voi ch: :stop ()

t I

end №uble) clock О / CLOCKS PER SEC;

void stopwatch: :ShowO {

cou Истекшее время end - begin; cDut \n ;

int mainO

stopwatch watch; long i;

watch.start() ;

for{i=0 00; ; время цикла

watch, stop О; watch.show();

здание объекта с использованием его начального значения stopwatch s2(clockO ) ;

for{i=0 0; ; время цикла

s2.stop О; . - .

s2 . show () ;

return 0; . , . ,.

1. Для объекто)Ь] и temp вызывается обычный конструктор. Однако, когда объект temp становится возвращаемым значением функции f{), создается временный объект, который генерирует вызов конструктора копий.

#include <iostream> using namespace std;

class myclass { public:

myclas) ;

myclass (constmyclaso) ;

myclass f 0;

/ / Обычный конструктор



1 ... 172 173 174 [ 175 ] 176 177 178 ... 227

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