|
Программирование >> Расширенная версия языка c++
528 Самоучитель C+ char *p; .:.). .. , i -. i . .:. ..;-.i, ; int len; public: - . -. 14 n-.i.* strtype(char *ptr); -strtype (); - - . - voi () ; strtype: :strtype (char *ptrl { len = strlen(ptr); p = ne [len +1]; Milp) { V cou< Ошибка выделения памятиХп ; exitdJ; strcpy(p, ptr) ; strtype::-strtype() 1 cou-- Освобождение памяти по аесу p\n ; delete p; void strtype:;show!) { cou << p - длинам len; cout \n ; int main 0 ( strtype Это поверка ) Мне нравится C++ ); si.show О; s2.show(); return 0; ГЛАВА 5 Повторение пройденного 1. Сс1лк - это особый тип указателя, который разыменовывается автоматически. Сс1лка в инструкциях может использоваться точно так же, как объект, Приложение В. Ответы н нт упражнений 529 на который она указывает. Имеются три вида ссылок: ссылка может быть параметром, сстлка может быть возвращаемым значением функции и, кроме этого, ссылка может быть независимой. Самыми важными являются ссылка в качестве параметра и ссылка в качестве возвращаемого значения функции. 2. ftinclude <i03tream> using namespace std; int mainO float *f; int i; f = new float; i = new int; if I I !i) I . ,-. cout << Ошибка выделения памятиХп ; return 1; . . } *f = 10.101; . . . . . *i= 100; - cou *f *i \n; delete f; delete i; return 0; 3. Здесь показана основная форма оператора new, используемая для инициализации динамических переменных: ука.заавль яа пврв1Мвнну1п д*гру:и!<{ве эначенив) ; Напримерв следующем фрагменте выделяется память для целого и этому целому присваивается значение 10: int *р; р = new int (10) ; 4. ftinclude <iostream> > .using namespace std; class samp { int x ; public: samp (int n) { x = n; } 530 . - . Самоучитель,....C+ + in Х() I return x; } :%b.,> -.,fiJL,. . int raaint) .j . samp АГ10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } ; - j int i; for(i=0; i<10; cout A[ i] .getx ( ) << ; .> cout \n ; I return 0; ) 5. Достоинства: Ссылка в качестве параметра при вызове функции не приводит к появлению копии объекта. Передача параметра по ссглке часто быстрее, чем его передача по значению. синтаксис и процедуру вызова функции шлке, снижая вероятность ошибки. Недостатки: Изменения в параметре-ссылке меняют и используемую в вызове исходную переменную, следовательно параметр-ссылка открывает возможность сторонних эффектов в вызывающей программе. 6. Нет. 7. finclude <iostreaiti> using namespace std; voi ng unum, long order); long n = 4 ; long о = 2; . . .--. - -.-ifbo .--. cou << Значее 4, увеличенное на два порядка равно ; mag (п, о) ; cou n << \n ; return 0; voi ng snum, long order) , for(; order; orde num um * 10;
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0.085
При копировании материалов приветствуются ссылки. |