какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

ООП – ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ ОсвобоТдСния ΠŸΠ°Π»Π΅ΡΡ‚ΠΈΠ½Ρ‹.
АббрСвиатура.

Π Π΅Π·ΠΎΠ½Π½Ρ‹ΠΉ вопрос – ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊ ΠΏΠΎΠ·Π΄Π½ΠΎ приступаСм ΠΊ знакомству с ООП? Π― Ρ‚ΠΎΠΆΠ΅ ΡΡ‡ΠΈΡ‚Π°ΡŽ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π³Π»Π°Π²Ρ‹ ΠΊΠ½ΠΈΠ³ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Ρ‹ Π²Ρ‹ΠΈΠ³Ρ€Π°Π»ΠΈ ΠΎΡ‚ ΠΈΡ… излоТСния Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ. Но, сказавши Β«Π°Β», слСдовало Π±Ρ‹ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈ Β«Π±Β», Ρ‚.Π΅. ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π±Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ООП, Π° это Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π΅ совсСм ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ:

эта тСхнология ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° Π½Π° созданиС ΡƒΠΆΠ΅ достаточно Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², хотя ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ части ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ классов) всС Ρ€Π°Π²Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ структурного программирования. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Π½Π° ΠΌΠΎΠΉ консСрвативный взгляд, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡ‡ΡƒΠ²ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ прСимущСства Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ООП, Π½Π°Π΄ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ слоТности Π² Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ;

ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π‘ΠΈ прСкрасно ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ срСдствами классичСского Π‘ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ΅, Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ Π²Ρ‚ΠΎΡ€ΠΎΠ΅;

всС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ Π³Π»Π°Π²Ρ‹ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ нСбольшими ΠΏΠΎ ΠΎΠ±ΡŠΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ориСнтированная нотация (ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ для ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²) Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°;

ООП – это постановка процСсса программирования «с Π½ΠΎΠ³ Π½Π° Π³ΠΎΠ»ΠΎΠ²ΡƒΒ», (ΠΈΠ»ΠΈ с Π³ΠΎΠ»ΠΎΠ²Ρ‹ Π½Π° Π½ΠΎΠ³ΠΈ), Π° это Π»ΡƒΡ‡ΡˆΠ΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ Π² сСрСдинС излоТСния ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°;

И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Ρ‚Π°ΠΊΠΎΠΉ «монстр» ΠΊΠ°ΠΊ Π‘ΠΈ++, ΠΏΡ‹Ρ‚Π°ΡŽΡ‰ΠΈΠΉΡΡ ΡΠΎΡ‡Π΅Ρ‚Π°Ρ‚ΡŒ Π² сСбС всС ΠΈ вся, ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ совсСм ΡƒΠ΄ΠΎΠ±Π½ΡƒΡŽ, излишнС ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ ΠΈ довольно Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΡƒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π½ΠΎΡ‚Π°Ρ†ΠΈΡŽ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» слСдуСт Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅ ΠΊ знакомству с Ρ‚ΠΎΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ срСдами ООП, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Java ΠΈΠ»ΠΈ C#.

10.1 ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ классы

ΠžΠ±ΡŠΠ΅ΠΊΡ‚, ΠΌΠ΅Ρ‚ΠΎΠ΄, класс: опрСдСлСния ΠΈ свойства

«Классами Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ большиС Π³Ρ€ΡƒΠΏΠΏΡ‹ людСй, Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΠ΅ΡΡ ΠΏΠΎ ΠΈΡ… мСсту Π² историчСски ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Β­Π½ΠΎΠΉ систСмС общСствСнного производства, ΠΏΠΎ ΠΈΡ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ) ΠΊ срСдствам произ­водства, ΠΏΠΎ ΠΈΡ… Ρ€ΠΎΠ»ΠΈ Π² общСствСнной ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Ρ€ΡƒΠ΄Π°, Π° ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΒ­Π½ΠΎ, ΠΏΠΎ способам получСния ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌ Ρ‚ΠΎΠΉ Π΄ΠΎΠ»ΠΈ общСствСнного богатства, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ΠΈ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚Β» ЛСнинскоС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ классов.

Π‘Ρ‚Ρ€ΠΎΠ³ΠΎ говоря, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ΄Π΅ΠΈ ООП ΠΌΠΎΠΆΠ½ΠΎ Π² классичСской срСдС программирования, соблюдая Π΄ΡƒΡ…, Π° Π½Π΅ Π±ΡƒΠΊΠ²Ρƒ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. НапримСр, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ Π½Π° ΠΎΠ±Ρ‰ΡƒΡŽ структуру Π΄Π°Π½Π½Ρ‹Ρ…, ΠΌΠΎΠΆΠ΅Ρ‚ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΈ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ классом.

ΠŸΡ€ΠΎΠΏΠΈΡΠ½Ρ‹Π΅ истины ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ синтаксисом. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±ΡƒΠΊΠ²Ρƒ, Π½ΠΎ ΠΈ Π΄ΡƒΡ… ООП. Но Π΄Π°ΠΆΠ΅ Π² самой Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ понятий класса ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² языкС программирования имССтся ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Ρ…, Π½ΠΎ Π½Π΅ всСгда ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌΡ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ слСдуСт ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΈΡ… здСсь ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ.

для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° создаСтся экзСмпляр Π΄Π°Π½Π½Ρ‹Ρ…;

ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой СдинствСнный экзСмпляр ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² сСгмСнтС ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ выполняСтся для всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (раздСляСтся ΠΈΠΌΠΈ);

ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ выполняСтся, идСнтифицируСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° this, Π·Π°Π΄Π°ΡŽΡ‰ΠΈΠΌ контСкст Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, связка Β«ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-ΠΌΠ΅Ρ‚ΠΎΠ΄Β» прСобразуСтся Π² Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий: Β«Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ – ΠΌΠ΅Ρ‚ΠΎΠ΄Π° класса с фактичСским ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ – ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Β».

public: void F() < a++; >// void A::F(A *this) < this->a++; >

Ссли элСмСнты Π΄Π°Π½Π½Ρ‹Ρ… класса ΠΈΠΌΠ΅ΡŽΡ‚ взаимосвязанныС значСния, Ρ‚ΠΎ класс Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ установлСнныС для Π½ΠΈΡ… соглашСния;

Ссли ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… класса ссылаСтся Π½Π° внСшниС структуры Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ ΠΏΡ€ΠΈ синтаксичСском ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ связанной структуры Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅-ΠΊΠΎΠΏΠΈΠΈ (ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΅Π΅ копию ΠΈΠ»ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ – см. «конструктор копирования»;

Ссли ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ содСрТит ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π²Π½Π΅ΡˆΠ½ΠΈΡ… рСсурсов (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½ΠΎΠΌΠ΅Ρ€ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°), Ρ‚ΠΎ дСйствия класса Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌΠΈ.

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом
рис. 101-1. ΠžΠ±ΡŠΠ΅ΠΊΡ‚: Π³Ρ€Π°Π½ΠΈΡ†Π° отвСтствСнности транслятора ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

double * pd ; // ВнутрСнняя Π‘Π” – Π΄ΠΈΠ½. массив коэффициСнтов

public : void add ( double D 2[], int n 2)<> // ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ закрытости – ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ – внутрСнняя Π‘Π”

void add ( poly & T )<> // ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ: ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ – ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ класса

По ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ интСрфСйс класса (Π½Π°Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²) Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ максимально Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π΅Π½, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΡ‡Π΅Ρ‚Π°Ρ‚ΡŒΡΡ Π² Π»ΡŽΠ±Ρ‹Ρ… комбинациях, давая ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ возмоТностСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

ΠŸΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ совСт: ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ многообразия Ρ„ΠΎΡ€ΠΌ прСдставлСния Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π§Π΅ΠΌ ΠΈΡ… мСньшС, Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΡ‰Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ. НапримСр, Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ„ΠΈΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ динамичСский массив, Ρ‡Π΅ΠΌ NULL-ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ с классом стСпСнного ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° «пустой» ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ динамичСским массивом с СдинствСнным Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ коэффициСнтом.

double * pd ; // ВнутрСнняя Π‘Π” – Π΄ΠΈΠ½. массив коэффициСнтов

public : poly () < n =0; pd = NULL ; >// ΠΠ΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ: NULL – отсутствиС массива

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ ΠΊΠ»Π°ΡΡΠΎΠΌΒ«Π›ΠΎΠΆΠ°ΡΡŒ ΡΠΏΠ°Ρ‚ΡŒ, программист ставит рядом Π΄Π²Π° стакана: ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ»Π½Ρ‹ΠΉ – Ссли Π·Π°Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΏΠΈΡ‚ΡŒ, ΠΈ ΠΎΠ΄ΠΈΠ½ пустой – Ссли Π½Π΅ Π·Π°Ρ…ΠΎΡ‡Π΅Ρ‚Β». АнСкдот Π² Ρ‚Π΅ΠΌΡƒ.

// Класс стСпСнного ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° – Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ класса (объявлСниС)

int n; // ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°

double *pd; // динамичСский массив коэффициСнтов

double & get ( int k ); // ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ссылки Π½Π° коэффициСнт

void add ( poly & T ); // слоТСниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (1=1+2)

void mul ( poly & T ); // ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (1=1+2)

Π¦Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€. ДСструктор

Π’Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ цСлостности ΠΈ коррСктности ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ – это Π½Π΅Ρ‡Ρ‚ΠΎ большСС, Ρ‡Π΅ΠΌ просто пСрСмСнная. ΠŸΡ€ΠΈ создании ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΅Π΅ инициализация вовсС Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ созданиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°Ρ‚ΡŒΡΡ установлСниСм Π΅Π³ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ состояния (инициализация Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ памяти, рСсурсов, установлСниС связСй ΠΈ Ρ‚.Π΄.). АналогичныС ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ дСйствия Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ Π΅Π³ΠΎ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄ освобоТдСниСм памяти. Π‘ этой Ρ†Π΅Π»ΡŒΡŽ Π² классС вводятся ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ – конструкторы ΠΈ дСструктор. Π˜Ρ… ΠΈΠΌΠ΅Π½Π° ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с ΠΈΠΌΠ΅Π½Π΅ΠΌ класса. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ΠΎΠ² для Π΄Π°Π½Π½ΠΎΠ³ΠΎ класса ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сколь ΡƒΠ³ΠΎΠ΄Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ, ΠΎΠ½ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, дСструктор ΠΆΠ΅ всСгда ΠΎΠ΄ΠΈΠ½ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ имя, ΠΏΡ€Π΅Π΄Π²Π°Ρ€Π΅Π½Π½ΠΎΠ΅ символом «

«. Если конструктор ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Ρ‚ΠΎ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° послС Π΅Π΅ ΠΈΠΌΠ΅Π½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² скобках значСния фактичСских ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

// Класс стСпСнного ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ° – конструкторы ΠΈ дСструктор

int n; // ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°

double *pd; // динамичСский массив коэффициСнтов

n=0; // с Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ коэффициСнтом

n=m; // с Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌΠΈ коэффициСнтами

load(n0,p); > // ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ load

load(T.n, T.pd); > // (конструктор копирования)

ΠœΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π° конструктора ΠΈ дСструктора опрСдСляСтся Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ создания ΠΈ уничтоТСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²:

Π’ Π‘ΠΈ++ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ массива ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² класса. ΠŸΡ€ΠΈ этом конструктор ΠΈ дСструктор автоматичСски Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² Ρ†ΠΈΠΊΠ»Π΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта массива ΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° delete для указатСля Π½Π° массив ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΡΡ‚ΡŒ скобками.

poly a,b(6), c (3, D ); // БтатичСскиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ – конструкторы

// пустой ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌ, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ размСрности ΠΈ ΠΈΠ· массива

poly *p,* q ; // Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚

poly c,d( c ); // АвтоматичСскиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

p = new poly ; // ДинамичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚

q = new poly [ n ]; // ДинамичСский массив ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

delete p; // Π£Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ динамичСского ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

delete [] q ; // Π£Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ динамичСского массива ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

> // Π£Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ автоматичСских ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: процСсс конструирования Β«Π²Π»ΠΎΠΆΠ΅Π½Β» Π² процСсс Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ памяти ΠΏΠΎΠ΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ вызываСтся сразу ΠΆΠ΅ послС выдСлСния памяти, Π° дСструктор – ΠΏΠ΅Ρ€Π΅Π΄ Π΅Π΅ освобоТдСниСм.

A(int a1) // ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€

Класс – структурированный Ρ‚ΠΈΠΏ с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌ доступом

«Настоящий» классы Π² Π‘ΠΈ++ отличаСтся ΠΎΡ‚ структурированного Ρ‚ΠΈΠΏΠ° ΠΎΠ΄Π½ΠΎΠΉ СдинствСнной ΠΌΠ΅Π»ΠΎΡ‡ΡŒΡŽ: Π² классС вводятся ограничСния доступа. ЕстСствСнно, это синтаксичСскиС ограничСния, ΠΈ ΠΏΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ простым Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° класса. Π­Ρ‚ΠΎ Β«Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅Β» ограничСния, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π·ΠΎΠ½Ρ‹ отвСтствСнности программистов – Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° класса ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ класса, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΡΡ‚ΡŒ.

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

Π’ процСссС программирования класса ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Π²Π° Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π»ΠΈΡ†Π° с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ΅Ρ‚Π΅Π½Ρ†ΠΈΠ΅ΠΉ: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ класса, ΠΏΠΈΡˆΡƒΡ‰ΠΈΠΉ Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΊΠΎΠ΄, ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ класса – программист, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ этого класса ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ для Π½ΠΈΡ… Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Но ограничСния ΠΊΠ°ΡΠ°ΡŽΡ‚ΡΡ Π½Π΅ самих программистов, Π° ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ класса – это Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится Π² Ρ‚Π΅Π»Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ класса (Ρ‚ΠΎΡ‡Π½Π΅Π΅, Π² Ρ‚Π΅Π»Π΅ Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²). Π’Π½Π΅ΡˆΠ½Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ – это Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠΎΠ΄Π° Π²Π½Π΅ Ρ‚Π΅Π»Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ класса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ создаСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ класса, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ этих ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹.

Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ класс отличаСтся ΠΎΡ‚ структурированного Ρ‚ΠΈΠΏΠ° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом class (вмСсто struct ) ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ΠΌ Π΄Π²ΡƒΡ… областСй доступа Π² Ρ‚Π΅Π»Π΅ класса:

закрытая (личная) Ρ‡Π°ΡΡ‚ΡŒ, допускаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚Π° ΠΏΡ€ΠΈ доступС Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π²Π½Π΅ класса. По ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ синтаксиса закрытая Ρ‡Π°ΡΡ‚ΡŒ начинаСтся сразу ΠΆΠ΅ вслСд Π·Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ класса. Она Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π° ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ private;

открытая (общая) Ρ‡Π°ΡΡ‚ΡŒ класса допускаСт любой доступ, Π² Ρ‚ΠΎΠΌ числС ΠΈ внСшний. Она всСгда явно обозначаСтся ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ public.

// Класс стСпСнного ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°

int n; // ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°

double *pd; // динамичСский массив коэффициСнтов

public:… // ΠΌΠ΅Ρ‚ΠΊΠ° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ части

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ размСщСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π² Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΈ ΠΎΠ±Ρ‰Π΅ΠΉ части класса Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Ρ€Π΅ΠΆΠ΅, Π½ΠΎ Ρ‚ΠΎΠΆΠ΅ обоснованы:

Π² ΠΎΠ±Ρ‰Π΅ΠΉ части класса ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π΄Π°Π½Π½Ρ‹Π΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ класса Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ катастрофичСским послСдствиям (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ†Π²Π΅Ρ‚ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹). ЕстСствСнно, Ρ‡Ρ‚ΠΎ класс Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ этих Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ пСрСрисовкС Ρ„ΠΈΠ³ΡƒΡ€Ρ‹);

Π² Π»ΠΈΡ‡Π½ΠΎΠΉ части класса ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ самого класса. Π­Ρ‚ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ дСйствия, вынСсСнныС Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², Π»ΠΈΠ±ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… дСйствий.

Иногда трСбуСтся ввСсти ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ· ΠΏΡ€Π°Π²ΠΈΠ» доступа, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ классу трСбуСтся Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ доступ ΠΊ Π»ΠΈΡ‡Π½ΠΎΠΉ части ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° класса. Π’ΠΎΠ³Π΄Π° Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ класса, ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Ρ‚Π°ΠΊΠΎΠΉ доступ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ объявлСниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ класса ΠΊΠ°ΠΊ «друТСствСнных». Π­Ρ‚ΠΎ согласуСтся с Ρ‚Π΅ΠΌ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠΌ, Ρ‡Ρ‚ΠΎ сам класс опрСдСляСт ΠΏΡ€Π°Π²Π° доступа ΠΊ своим ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ «со стороны».

ОбъявлСниС друТСствСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСдставляСт собой ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, пСрСопрСдСляСмой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ имя класса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ доступ, ΠΏΡ€Π΅Π΄Π²Π°Ρ€Π΅Π½Π½ΠΎΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом friend.

// ΠšΠ»Π°ΡΡΡ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, друТСствСнныС классу A

int x; // Личная Ρ‡Π°ΡΡ‚ΡŒ класса

. // ВсС Β«Π΄Ρ€ΡƒΠ·ΡŒΡΒ» ΠΈΠΌΠ΅ΡŽΡ‚ доступ ΠΊ x

friend void C::operator+( А &);

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом«Друг – это Ρ‚ΠΎΡ‚, ΠΊΡ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΎ Π»Π΅Π·Ρ‚ΡŒ Ρ‚Π΅Π±Π΅ Π² Π΄ΡƒΡˆΡƒ (Π»ΠΈΡ‡Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ) Π² любоС врСмя».

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ классу ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠΎΠ², сразу ΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π² Π½Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ большСй части ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· друТСствСнности. Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΡΡ‚ΡŒ ΠΆΠ΅ касаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Π½Π½Ρ‹Ρ… (Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° динамичСский массив), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², связанных с ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ динамичСской ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ размСрности ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°.

Π—Π°Π΄Π°Ρ‡Π° управлСния динамичСской ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½Π° Ρ€Π°Π· ΠΈ навсСгда Π² Π½Π°Ρ‡Π°Π»Π΅ проСктирования класса, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² дальнСйшСм ΠΊ Π½Π΅ΠΉ Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ. Π£Π΄ΠΎΠ±Π½Π΅Π΅ всСго ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это Π² Π²ΠΈΠ΄Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² управлСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ΠŸΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠΉ размСрности, Π½Π΅ΠΆΠ΅Π»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π² явном Π²ΠΈΠ΄Π΅ динамичСскиС структуры Π΄Π°Π½Π½Ρ‹Ρ….

// Класс стСпСнного ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°

int n; // ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°

double *pd; // динамичСский массив коэффициСнтов

void load(int n0, double p[])<

n=n0; // Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ массива

double *pd1=new double[n1+1];

for (; i n 1; i ++) pd 1[ i ]=0;// ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΡ‚Π°Ρ€ΡˆΠΈΠ΅ коэффициСнты нулями

delete []pd; // ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ старый массив

pd=pd1; // ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Π·Π° старый

> // ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ пСрСраспрСдСляСтся

public :… // ΠΌΠ΅Ρ‚ΠΊΠ° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ части

Рассмотрим Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅Ρ‚ΠΎΠ΄, интСрСсный с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ закрытости. ΠœΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ссылку Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ коэффициСнт ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°, Ρ‡Ρ‚ΠΎ позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌ ΠΊΠ°ΠΊ ΠΏΠΎ Ρ‡Ρ‚Π΅Π½ΠΈΡŽ, Ρ‚Π°ΠΊ ΠΈ ΠΏΠΎ записи. Π₯отя это Β«ΠΏΡ€ΠΈΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚Β» доступ ΠΊ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π½ΠΎ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ использованиС этой ссылки Β«Π²ΠΎ Π²Ρ€Π΅Π΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΡƒΒ» ΠΈ доступ Ρ‡Π΅Ρ€Π΅Π· Π½Π΅Π΅ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ коэффициСнтам Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ большого искусства ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ Π½Π΅ΡΠΎΠ·Π½Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ (ΠΏΠΎ ошибкС). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ρ‚Π°ΠΊΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ бСзопасной.

// Класс стСпСнного ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°

int n; // ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠ°

double *pd; // динамичСский массив коэффициСнтов

if ( k k > n ) return foo ; // Π½Π° «Π»Π΅Π²ΡƒΡŽ» ΡΡ‚Π°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ

ВзаимодСйствиС Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π² ООП

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

Π’ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ООП Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΈΠΌΠ΅ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ рСгулярный Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€: Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, класс ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π² сСбС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ). Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, схСма взаимодСйствия Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ иная. ΠœΠ΅Ρ‚ΠΎΠ΄ (функция), Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π½Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ нСпосрСдствСнно. Для Π½Π°Ρ‡Π°Π»Π° ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ доступ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ (ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΈ Ρ‚.Π΄.), послС Ρ‡Π΅Π³ΠΎ ΠΎΠ½ ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ для Π½Π΅Π³ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· извСстных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, структура ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ опрСдСляСтся взаимодСйствиСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… классов ΠΌΠ΅ΠΆΠ΄Ρƒ собой, Π° процСсс выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ выраТаСтся Ρ„Ρ€Π°Π·ΠΎΠΉ Β«ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-ΠΌΠ΅Ρ‚ΠΎΠ΄-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Β».

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом
рис.101-4. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ Β«ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-ΠΌΠ΅Ρ‚ΠΎΠ΄-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Β»

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ проСктирования Π² Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ООП

Β· Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ конструкций языка, ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Ρ‚ΠΈΠΏΠΎΠ², объявлСний ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° класса;

Β· Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ класса ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ объявлСниС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° – Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ со списком Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ), ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с запятой. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½ΠΈΠΊΠ΅ упоминаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„Π°ΠΊΡ‚ Π΅Π³ΠΎ наличия (с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈ интСрфСйсом). Π’ΠΎΠ³Π΄Π° Π² Ρ„Π°ΠΉΠ»Π΅ Ρ‚Π΅Π»Π° класса Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, содСрТащСС Π΅Π³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈ Ρ‚Π΅Π»ΠΎ. Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ повторяСт объявлСниС с ΠΎΠ΄Π½ΠΈΠΌ малСньким ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ΠΌ: имя ΠΌΠ΅Ρ‚ΠΎΠ΄Π° даСтся Π² ΠΏΠΎΠ»Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π² Π²ΠΈΠ΄Π΅ имя_класса::имя_ΠΌΠ΅Ρ‚ΠΎΠ΄Π°;

Β· Ρ„Π°ΠΉΠ» Ρ‚Π΅Π»Π° класса Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ свой Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ include ;

Β· для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Ρ€ΡƒΠ³ΠΎΠΉ класс ΠΈΠ»ΠΈ main ΠΌΠΎΠ³Π»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ класса ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊ Π½ΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ include ;

Β· всС ΠΈΠΌΠ΅Π½Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ‚Π΅Π»Π° класса Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚;

int a; // Π”Π°Π½Π½Ρ‹Π΅ класса

void add ( A &); // ОбъявлСниС (ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ) ΠΌΠ΅Ρ‚ΠΎΠ΄Π°

A mul ( A &); // ОбъявлСниС (ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ) ΠΌΠ΅Ρ‚ΠΎΠ΄Π°

ЕстСствСнно, Π½ΠΈΠΊΡ‚ΠΎ Π½Π΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ Β«ΡΠ²Π°Π»ΠΈΡ‚ΡŒ всС классы Π² ΠΎΠ΄Π½Ρƒ ΠΊΡƒΡ‡ΡƒΒ», Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ это ΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ Π½Π΅ эстСтично.

Π›Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½Ρ‹ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ

1. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ Π΄Ρ€ΠΎΠ±ΡŒ, прСдставлСнная Ρ†Π΅Π»ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ, числитСлСм ΠΈ Π·Π½Π°ΠΌΠ΅Π½Π°Ρ‚Π΅Π»Π΅ΠΌ.

4. Π¦Π΅Π»ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ число, прСдставлСнноС Π² Π²ΠΈΠ΄Π΅ массива Π΅Π³ΠΎ простых ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»Π΅ΠΉ (ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Π°Π΅Ρ‚ это число).

5. Π¦Π΅Π»ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ число, прСдставлСнноС Π² Π²ΠΈΠ΄Π΅ массива остатков ΠΎΡ‚ дСлСния Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹Π΅ n 6. Π’Π΅ΠΊΡ‚ΠΎΡ€ Π½Π° плоскости, прСдставлСнный Π² полярной систСмС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ (Π΄Π»ΠΈΠ½Π°, ΡƒΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π°).

8. ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ размСрности, прСдставлСнная динамичСским массивом ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° строки ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ (Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Π΅ динамичСскиС массивы).

9. ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ размСрности, прСдставлСнная динамичСским массивом, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ строки ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ располоТСны ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ.

10. РазрСТСнная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ размСрности, Π½Π΅Π½ΡƒΠ»Π΅Π²Ρ‹Π΅ коэффициСнты прСдставлСны динамичСским массивом с элСмСнтами (x,y,v) ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

11. РазрСТСнная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ размСрности, Π½Π΅Π½ΡƒΠ»Π΅Π²Ρ‹Π΅ коэффициСнты прСдставлСны односвязным списком с элСмСнтами (x,y,v) ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

12. РазрСТСнная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ размСрности, Π½Π΅Π½ΡƒΠ»Π΅Π²Ρ‹Π΅ коэффициСнты прСдставлСны двусвязным цикличСским списком с элСмСнтами (x,y,v) ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

13. ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ, элСмСнтами ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ†Π΅Π»Ρ‹Π΅ числа. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ объСдинСния ΠΈ пСрСсСчСния мноТСств, добавлСния элСмСнта, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅, разности мноТСств.

14. Π¦Π΅Π»Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ со Π·Π½Π°ΠΊΠΎΠΌ Π²ΠΎ внСшнСй Ρ„ΠΎΡ€ΠΌΠ΅ прСдставлСния Π² Π²ΠΈΠ΄Π΅ строки Ρ†ΠΈΡ„Ρ€ Π² прямом ΠΊΠΎΠ΄Π΅. Π—Π½Π°ΠΊ прСдставлСн ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ элСмСнтом Π΄Π°Π½Π½Ρ‹Ρ….

15. Π¦Π΅Π»Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ со Π·Π½Π°ΠΊΠΎΠΌ Π²ΠΎ внСшнСй Ρ„ΠΎΡ€ΠΌΠ΅ прСдставлСния Π² Π²ΠΈΠ΄Π΅ строки Ρ†ΠΈΡ„Ρ€ Π² прямом ΠΊΠΎΠ΄Π΅. Π—Π½Π°ΠΊ прСдставлСн ΡΡ‚Π°Ρ€ΡˆΠ΅ΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠΉ (0 /1).

16. Π¦Π΅Π»Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ со Π·Π½Π°ΠΊΠΎΠΌ Π²ΠΎ внСшнСй Ρ„ΠΎΡ€ΠΌΠ΅ прСдставлСния Π² Π²ΠΈΠ΄Π΅ строки Ρ†ΠΈΡ„Ρ€ Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅.

17. Π¦Π΅Π»Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ прСдставлСнии (динамичСский массив Π±Π°ΠΉΡ‚ΠΎΠ²) Π² прямом ΠΊΠΎΠ΄Π΅. Π—Π½Π°ΠΊ прСдставлСн ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ элСмСнтом Π΄Π°Π½Π½Ρ‹Ρ….

18. Π¦Π΅Π»Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ прСдставлСнии (динамичСский массив Π±Π°ΠΉΡ‚ΠΎΠ²) Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

ΠšΠ»Π°ΡΡΡ‹ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² ООП β€” Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ понятия. ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ класса Π² ООП – это Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… (Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Real ΠΈΠ»ΠΈ String), Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ – ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ экзСмпляр класса (Π΅Π³ΠΎ копия), хранящийся Π² памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΊΠ°ΠΊ пСрСмСнная ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ°.

Класс являСтся структурным Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Класс Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ описаниС ΠΏΠΎΠ»Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с этими полями Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΠ΅Ρ‚ΠΎΠ΄ ООП – это ΠΈ Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ классам.
ΠšΠ»Π°ΡΡΡ‹ ΠΈΠΌΠ΅ΡŽΡ‚ поля (ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… запись β€” record), свойства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° поля, Π½ΠΎ ΠΈΠΌΠ΅ΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ описатСли, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ записи ΠΈ считывания Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ β€” ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅ΠΉ ΠΈ свойств класса.

ΠšΠ»Π°ΡΡΡ‹ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ понятия

ΠšΠ»Π°ΡΡΡ‹ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ состоят ΠΈΠ· свойств ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Бвойства β€” это Π»ΡŽΠ±Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса. Π’ нашСм случаС, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ класса являСтся студСнт, Π° Π΅Π³ΠΎ свойствами β€” имя, фамилия, ΠΎΡ†Π΅Π½ΠΊΠΈ ΠΈ срСдний Π±Π°Π»Π».

Ѐункция calculate_average_ball() просто Π΄Π΅Π»ΠΈΡ‚ сумму всСх ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΎΡ†Π΅Π½ΠΎΠΊ Π½Π° ΠΈΡ… количСство.

ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа public ΠΈ private

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π΅Π»Π°ΡŽΡ‚ всС свойства класса, Π° ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ β€” Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. ВсС дСйствия с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ свойствами класса Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄.

ΠœΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ класса. Π Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с этими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ посрСдством ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² этого класса. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ get_average_ball() для получСния срСднСй ΠΎΡ†Π΅Π½ΠΊΠΈ студСнта, ΠΈ set_average_ball() для выставлСния этой ΠΎΡ†Π΅Π½ΠΊΠΈ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΡƒΡ‡Π΅Ρ‚Π° успСваСмости студСнтов

Π’Π΅ΠΏΠ΅Ρ€ΡŒ создайтС Ρ„Π°ΠΉΠ» main.cpp со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ содСрТимым.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ класса Students Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ студСнта. Если ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΠΌ Π²Ρ‹ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΡ†Π΅Π½ΠΊΠΈ всСм ΡƒΡ‡Π΅Π½ΠΈΠΊΠ°ΠΌ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅, Ρ‚ΠΎ Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ…. ИспользованиС классов ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для описания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π°.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Различия ΠΌΠ΅ΠΆΠ΄Ρƒ классом ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ?

К своСму стыду, Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ, осознал, Ρ‡Ρ‚ΠΎ Π½Π΅ понимаю Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ классом ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

Π’.Π΅. чисто тСорСтичСски понимаю, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ это экзСмпляр класса, Ρ‚.Π΅. класс это ΠΊΠ°ΠΊ Π±Ρ‹ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°, Π° ΡƒΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ это ΡƒΠΆΠ΅ Β«Π²Π΅Ρ‰ΡŒΒ», с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ нСпосрСдствСнно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Или, Π² Π΄Π°Π½Π½ΠΎΠΌ случаС, класс это просто ΠΊΠ°ΠΊ Π±Ρ‹ Π³Ρ€ΡƒΠΏΠΏΠ° Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² своём «пространствС ΠΈΠΌΠ΅Π½Β», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ «пСрсонализации» ΠΏΡƒΡ‚Π΅ΠΌ задания ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΡ… свойств?

Поиск Π² Π³ΡƒΠ³Π»Π΅ ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠΌΠΎΠ³, Π² основном приводятся Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Π²ΠΈΠ΄Π° «Класс β€” Ρ‡Π΅Ρ€Ρ‚Π΅ΠΆΠΈ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ β€” сама машина», Π½ΠΎ Π½ΠΈ слова ΠΎ практичСском ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ.

Π—Π°Ρ€Π°Π½Π΅Π΅ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ Π·Π° Ρ€Π°Π·ΡŠΡΡΠ½Π΅Π½ΠΈΡ, Π° Ρ‚ΠΎ сия каша Π² Π³ΠΎΠ»ΠΎΠ²Π΅ ΡƒΠΆΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π½Π°ΠΏΡ€ΡΠ³Π°Ρ‚ΡŒ =)

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

Класс = срособ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»Π΅ΠΉ, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΡ€. = инкапсулированный «кусок» Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, описаниС структуры Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² + своё пространство ΠΈΠΌΡ‘Π½ Π²Π½ΡƒΡ‚Ρ€ΠΈ.

БтатичСская ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ класса β€” static-ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ static-поля β€” это логичСский способ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΎΠ±Ρ‰Π΅ΠΉ для любого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ сущности. Π’ΡƒΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ логичСская ΡΠΎΡΡ‚Π°Π²ΡΡŽΡ‰Π°Ρ β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, статичСский ΠΌΠ΅Ρ‚ΠΎΠ΄ Parse Π΅ΡΡ‚ΡŒ ΠΈ Π² классС int, ΠΈ Π² классС Guid β€” Π½ΠΎ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Π° ΠΈ соотвСтствуСт Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ сущности. Для static-ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ класса, Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ пространство ΠΈΠΌΡ‘Π½. Но пространсто ΠΈΠΌΡ‘Π½ нСльзя ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, нСльзя ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пространства ΠΈΠΌΡ‘Π½.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ = экзСмпляр класса = ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Ρ‚ΠΈΠΏΠΎΠΌ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ являСтся ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ класс = класс послС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ = ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ Π² памяти, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰Π°Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ, способная ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ своё состояниС.

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π°ΠΌ Π»Π΅Π³Ρ‡Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ссли Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ классС ΠΊΠ°ΠΊ ΠΎ Π½Π°Π±ΠΎΡ€Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π° ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ ΠΊΠ°ΠΊ ΠΎ Π½Π°Π±ΠΎΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, поэтому ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Ρ‹ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΈΠ· класса.

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

Π― ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π» свою Π΄ΡƒΡ€Π°Ρ†ΠΊΡƒΡŽ аналогию.

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

Класс β€” Ρ‡Π΅Ρ€Ρ‚Π΅ΠΆ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса β€” машина, собранная ΠΏΠΎ этому Ρ‡Π΅Ρ€Ρ‚Π΅ΠΆΡƒ.

БтатичСский ΠΌΠ΅Ρ‚ΠΎΠ΄ β€” это Π½Π΅ΠΊΠΎΠ΅ устройство (ΠΏΡƒΡΡ‚ΡŒ Π² нашСм случаС Π±ΡƒΠ΄Π΅Ρ‚ GPS-Π½Π°Π²ΠΈΠ³Π°Ρ‚ΠΎΡ€), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ поставляСтся вмСстС с Ρ‡Π΅Ρ€Ρ‚Π΅ΠΆΠΎΠΌ ΠΈ прСдставлСно Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ машинС, построСнной ΠΏΠΎ этому Ρ‡Π΅Ρ€Ρ‚Π΅ΠΆΡƒ. Устройство это Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ задСйствуСт ΠΌΠ°ΡˆΠΈΠ½Ρƒ, ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ само ΠΏΠΎ сСбС.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π±Π΅Π³Π°Ρ‚ΡŒ с GPS Π½Π°Π²ΠΈΠ³Π°Ρ‚ΠΎΡ€ΠΎΠΌ Π½Π΅ построив ΠΌΠ°ΡˆΠΈΠ½Ρ‹.

Если ΠΎΡ‚ΠΎΠΉΡ‚ΠΈ ΠΎΡ‚ популярного излоТСния, Ρ‚ΠΎ статичСскиС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π΅ ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‚ΡΡ с экзСмплярами классов. И ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Ρ‹ нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ создан экзСмпляр класса ΠΈΠ»ΠΈ Π½Π΅Ρ‚.

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

Π‘Π΅Π· Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ класса (создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°) Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ со статичСскими ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ/свойствами класса. Если Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ упомянутой ΠΌΠ°ΡˆΠΈΠ½Ρ‹ β€” класс описываСт, Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅, Π° рСализация (instance) класса β€” соотвСтствСнно, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ.

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ ΠΌΠΈΠ½ΠΈΠ°Ρ‚ΡŽΡ€Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Π’ ΠΈΡ‚ΠΎΠ³Π΅ Ρƒ нас 2 ΠΌΠ°ΡˆΠΈΠ½Ρ‹ β€” VW ΠΈ Π–ΠΈΠ³ΡƒΠ»ΠΈ. ОбС β€” экзСмпляры класса машина (Car). Π‘Π΅Π· создания экзСмпляра класса Π’Ρ‹ Π½Π΅ Π·Π°Π΄Π°Π΄ΠΈΡ‚Π΅ брэнд β€” Π½Π΅Ρ‡Π΅ΠΌΡƒ Π΅Π³ΠΎ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ, собствСнно.

Ну это Ссли ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ Π½Π° ΠΏΠ°Π»ΡŒΡ†Π°Ρ….
А Π²ΠΎΠΎΠ±Ρ‰Π΅ β€” Π²ΠΎΡ‚, Π΄Π΅Ρ€ΠΆΠΈΡ‚Π΅: ΠΏΡ€ΠΎ ООП Π½Π° php.su

какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом. Π€ΠΎΡ‚ΠΎ какая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ классом

Π’ самом простом случаС: Класс β€” это ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ‰Π΅Π³ΠΎ повСдСния для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ этот класс ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Π΅Ρ‚. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ этим классом ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² своим состояниСм (Π½Ρƒ Π° Ссли состояниС ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ, Ρ‚ΠΎ просто это Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°ΠΊ Π΄Π²Π° ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… автомобиля β€” сущностСй Π΄Π²Π΅ Ρ€Π°Π·Π½Ρ‹Π΅, Π½ΠΎ выглядят ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ ).

Π”Π°Π»Π΅Π΅, ΠΊ классу ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ статичСскиС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ поля. Π—Π΄Π΅ΡΡŒ ΡƒΠΆΠ΅ сам класс Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ своС состояниС ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ дСйствия. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв (Π½ΠΎ Π½Π΅ Π²ΠΎ всСх) это трСбуСтся для контроля Π½Π°Π΄ производством ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² этого класса (ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ Π‘ΠΈΠ½Π³Π»Π΅Ρ‚ΠΎΠ½, Π€Π°Π±Ρ€ΠΈΠΊΠ° ΠΈ Ρ‚.ΠΏ.).

Π•Ρ‰Π΅ Π΄Π°Π»Π΅Π΅, Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языка, всС являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, поэтому класс Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ. Π­Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ сами классы, ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈΡ… Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ Π΅Π΅ старта ΠΈ Ρ‚.ΠΏ.

ВсС это ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ‚ с ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ написания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, просто Π½ΡƒΠΆΠ½ΠΎ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΌΠ΅Ρ‚Π°Ρ„ΠΎΡ€Π°ΠΌΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *