C++ за 21 день седьмое издание



Download 1,38 Mb.
bet144/437
Sana22.02.2022
Hajmi1,38 Mb.
#89455
TuriРеферат
1   ...   140   141   142   143   144   145   146   147   ...   437
Bog'liq
word1

using namespace std;



2 :



  1. void CalculateSquare(const int& Number, int& Result)




    1. заметьте, "const"




  1. {




  1. Result = Number*Number;

6 : }


7:



  1. int main()




  1. {




  1. cout « "Enter a number you wish to square: ";




  1. int Number = 0;




  1. cin » Number;



13:



  1. int Square = 0;




  1. CalculateSquare(Number, Square);




  1. cout « Number « "A2 = " « Square « endl;








  1. return 0;




  1. }



Результат

E n te r a num ber you w ish to s q u a r e : 27


27A2 = 729




Анализ



  1. отличие от предыдущей программы, где передававшая число переменная содержала также и результат, здесь используются две переменные: одна для передачи числа, которое будет возведено в квадрат, а вторая для содержания результата. Для гарантии неизмен­ ности передаваемого числа оно было помечено как константная ссылка ключевым словом c o n s t (см. строку 3). Это автоматически делает параметр Number входным параметром

(input parameter), значение которого не может быть изменено.



  1. качестве эксперимента можете изменить строку 5 так, чтобы возвратить квадрат, ис­ пользуя ту же логику, что и в листинге 8.18:

Number *= Num ber;


Вы получите ошибку при компиляции, сообщающую, что значение константы не мо­ жет быть изменено. Таким образом, константные ссылки — мощный инструмент, предо­ ставляемый языком C++, для обозначения входных параметров и гарантии того, что пере­ даваемое по ссылке значение не может быть изменено вызываемой функцией. На первый


Резюме 197

взгляд это может показаться тривиальным, но в коллективе разработчиков, где один пишет первую версию, второй — вторую, третий исправляет или совершенствует ее, использова­ ние константных ссылок имеет важное значение для качества программы.




Резюме

На этом занятии вы узнали об указателях и ссылках. Вы научились применять указа­ тели для доступа к областям памяти и манипулирования ими, а также узнали, что указате­ ли — это инструмент динамического распределения памяти. Вы изучили операторы new л d e l e te , применяемые при резервировании памяти для элемента, а также их варианты





  1. ew . . . [ ] и d e l e t e [ ], позволяющие резервировать память для массива данных. Вы озна­ комились с возможными проблемами при использовании указателей и динамического рас­ пределения, а также узнали о том, что освобождение динамически распределенной памяти зажно для предотвращения ее утечек. Ссылки — это псевдонимы, являющиеся мощной альтернативой использованию указателей при передаче аргументов функциям, поскольку они гарантируют их допустимость. Вы узнали о “правильности констант” при использо­ вании указателей и ссылок, и надеюсь, впредь будете объявлять функции с самым ограни­ чивающим уровнем константности параметром из всех возможных.




Download 1,38 Mb.

Do'stlaringiz bilan baham:
1   ...   140   141   142   143   144   145   146   147   ...   437




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish