Difference between revisions of "Step 3 (S-11075)"

From Stepik Wiki
Jump to: navigation, search
(Create page for step id=11075)
 
 
Line 1: Line 1:
 
Step on Stepik: https://stepik.org/lesson/561/step/3
 
Step on Stepik: https://stepik.org/lesson/561/step/3
  
<img width="50%" src="https://ucarecdn.com/717a38c7-d722-4af6-a6c6-9509f972eadf/">
+
[[File:Step_3_(S-11075)_1.png|border|800px]]
  
 
[00:00 - 00:15] класс умеет держать не только с другими классами но есть функциями то есть для некоторого класса можно объявить дружественной некоторых функций и тогда эта функция будет иметь доступ к приватным полям этого класс для того чтобы объявить функцию как дружественно нужно
 
[00:00 - 00:15] класс умеет держать не только с другими классами но есть функциями то есть для некоторого класса можно объявить дружественной некоторых функций и тогда эта функция будет иметь доступ к приватным полям этого класс для того чтобы объявить функцию как дружественно нужно

Latest revision as of 13:06, 7 August 2017

Step on Stepik: https://stepik.org/lesson/561/step/3

Step 3 (S-11075) 1.png

[00:00 - 00:15] класс умеет держать не только с другими классами но есть функциями то есть для некоторого класса можно объявить дружественной некоторых функций и тогда эта функция будет иметь доступ к приватным полям этого класс для того чтобы объявить функцию как дружественно нужно


[00:15 - 00:30] внутри описание класса объявить эту функцию с ключевым словом фрахт то есть пользователь ключевым словом friend и дальше указать объявления функций в нашем случае такая функция это оператор вывода


[00:30 - 00:45] оператор вывода для эффективной реализации может потребуется доступ к внутренним полям класса но оператор вывода нельзя сделать методом то есть никак нельзя дать ему возможность без ничего слово фразу


[00:45 - 01:02] однако можно объявить оператор вывода как дружественно и тогда он будет иметь возможность получить доступ к более того можно не только объявить его как друга но и сразу же определить


[01:02 - 01:19] то есть не только указать объявление функции но и определения этой функции в этом случае как и все другие функции методы которые определяются внутри класса такая функция дружественно будет январь


[01:19 - 01:37] то есть не придется разбивать на определение и объявление и все будет хорошо даже в том случае если получит положите определение такого класса дружественно функции в заголовочном файле он включился в несколько единиц трансляции


[01:37 - 01:50] то есть все хорошо можно описывать такие дружеские функции прямо внутри класс при этом в реализации этой функции мы сможем получить доступ к приватным полям класса