πŸ’― Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° тСст БинСргия / МВИ / МосАП, ΠΌΠ°ΠΉ 2023) (РСшСниС β†’ 60151)

ОписаниС

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

  • ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° 62 вопроса
  • Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ 90...100 Π±Π°Π»Π»ΠΎΠ² ΠΈΠ· 100
  • вопросы отсортированы Π² лСксикографичСском порядкС
ОглавлСниС

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Π’Π΅ΠΌΠ° 1. ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ класса ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π”Π°Π½Π½Ρ‹Π΅-Ρ‡Π»Π΅Π½Ρ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Ρ‡Π»Π΅Π½Ρ‹ (ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹)Π’Π΅ΠΌΠ° 2. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ дСструкторы классовВСма 3. ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ присваиваниС для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² классаВСма 4. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ наслСдования ΠΈ Π΅Π³ΠΎ

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

  1. Π’Π΅ΠΌΠ° 1. ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ класса ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π”Π°Π½Π½Ρ‹Π΅-Ρ‡Π»Π΅Π½Ρ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Ρ‡Π»Π΅Π½Ρ‹ (ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹)
  2. Π’Π΅ΠΌΠ° 2. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ дСструкторы классов
  3. Π’Π΅ΠΌΠ° 3. ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ присваиваниС для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² класса
  4. Π’Π΅ΠΌΠ° 4. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ наслСдования ΠΈ Π΅Π³ΠΎ рСализация срСдствами языка программирования Π‘++
  5. Π’Π΅ΠΌΠ° 5. Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ классы. ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΎΠ΅ наслСдованиС
  6. Π’Π΅ΠΌΠ° 6. ΠšΠ»Π°ΡΡΡ‹-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹
  7. Π’Π΅ΠΌΠ° 7. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ


Π’ прСдставлСнной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ throw, try ΠΈ catch вмСстС. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ: We caught an int exception with value -1. Continuing our way! ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π±Π»ΠΎΠΊΠΈ.

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ try ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ -1 Ρ‚ΠΈΠΏΠ° int. Π—Π°Ρ‚Π΅ΠΌ Π±Π»ΠΎΠΊ throw ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ try ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±Π»ΠΎΠΊ catch, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° int. Π‘Π»ΠΎΠΊ catch Ρ‚ΠΈΠΏΠ° int ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ сообщСниС ΠΎΠ± ошибкС
  • ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ -1 Ρ‚ΠΈΠΏΠ° int. Π—Π°Ρ‚Π΅ΠΌ Π±Π»ΠΎΠΊ try ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±Π»ΠΎΠΊ catch, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° int. Π‘Π»ΠΎΠΊ catch Ρ‚ΠΈΠΏΠ° int ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ сообщСниС ΠΎΠ± ошибкС
  • ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw опрСдСляСт Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ -1 Ρ‚ΠΈΠΏΠ° int. ПослС Ρ‡Π΅Π³ΠΎ Π±Π»ΠΎΠΊ try удаляСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ Π±Π»ΠΎΠΊ catch, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ

Π’ C ++ функция ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • throw
  • catch
  • try

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

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • эта запись ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ компилятору β€” Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ FirstClass Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ β€” Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ show_value() класса value. А ΠΎΠ½, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° экранС
  • эта запись ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ компилятору β€” Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ value Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ β€” Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ FirstClass класса show_value(). А ΠΎΠ½, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° экранС
  • эта запись ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ компилятору β€” Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ value Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ β€” Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ show_value() класса FirstClass. А ΠΎΠ½, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° экранС

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ использования (ΠΊΡ€ΠΎΠΌΠ΅ всСго ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ) Π½ΡƒΠΆΠ½Ρ‹ для:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • получСния свСдСний ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ…, Π²ΠΎΠ·Π½ΠΈΠΊΡˆΠΈΡ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅
  • Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π² классах ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ конструкторы
  • обСспСчСния Π²Ρ‹Π±ΠΎΡ€Π° подходящих Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² класса

Π’Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ β€” это ΡƒΠΌΠ½Ρ‹Π΅ массивы. Они Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ автоматичСским Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ сСбя Π² памяти, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ ΠΈ суТСниСм своСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ вставки ΠΈΠ»ΠΈ удалСния Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠ΅Ρ€Π΅ ΠΊΠ°ΠΊ массивы, ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ элСмСнтам, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° []. Π‘Π»ΡƒΡ‡Π°ΠΉΠ½Ρ‹ΠΉ доступ выполняСтся ΠΎΡ‡Π΅Π½ΡŒ быстро Π² Π²Π΅ΠΊΡ‚ΠΎΡ€Π°Ρ…. Π’Π°ΠΊΠΆΠ΅, довольно быстро осущСствляСтся Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ‚Π°Π»ΠΊΠΈΠ²Π°Π½ΠΈΠ½ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ½Π΅Ρ† Π²Π΅ΠΊΡ‚ΠΎΡ€Π°. Когда это происходит, Ρ€Π°Π·ΠΌΠ΅Ρ€ Π²Π΅ΠΊΡ‚ΠΎΡ€Π° автоматичСски увСличиваСтся для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ ΠΊΡƒΠ΄Π° Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Рассмотрим ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ дСмонстрируСт Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ insert(). ΠœΠ΅Ρ‚ΠΎΠ΄ insert() ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°: Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅ располоТСниС Π½ΠΎΠ²ΠΎΠ³ΠΎ элСмСнта Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта. ΠŸΡ€ΠΈΠ±Π°Π²Π»ΡΠ΅ΠΌ Π΄Π²Π΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ выполнСния ΠΌΠ΅Ρ‚ΠΎΠ΄Π° begin(), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ элСмСнту β„– 2 (Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ элСмСнт Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅, считая с нуля). Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΎΡ‚ Ρ‚ΠΎΡ‡ΠΊΠΈ вставки Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΡΠ΄Π²ΠΈΠ³Π°ΡŽΡ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ мСсто для размСщСния вставляСмого. Π Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° автоматичСски увСличиваСтся Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ
  • для создания Π²Π΅ΠΊΡ‚ΠΎΡ€Π° v ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΉ конструктор Π²Π΅ΠΊΡ‚ΠΎΡ€Π° Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Как с Π»ΡŽΠ±Ρ‹ΠΌΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ STL, для задания Ρ‚ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² Π²Π΅ΠΊΡ‚ΠΎΡ€Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡˆΠ°Π±Π»ΠΎΠ½Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС это Ρ‚ΠΈΠΏ int). ΠœΡ‹ Π½Π΅ опрСдСляСм Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, поэтому Π²Π½Π°Ρ‡Π°Π»Π΅ ΠΎΠ½ Ρ€Π°Π²Π΅Π½ 0. ΠœΠ΅Ρ‚ΠΎΠ΄ push_back() вставляСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ своСго Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° Π² ΠΊΠΎΠ½Π΅Ρ† Π²Π΅ΠΊΡ‚ΠΎΡ€Π° (ΠΊΠΎΠ½Π΅Ρ† располагаСтся Ρ‚Π°ΠΌ, Π³Π΄Π΅ находится самый большой индСкс). Начало Π²Π΅ΠΊΡ‚ΠΎΡ€Π° (элСмСнт с индСксом 0), Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ списков ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π΅ΠΉ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для вставки Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов
  • Ссли ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ main ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Ρ‚ΠΎ push_back() Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½, ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ освобоТдСна ΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΡƒΡ‚Π΅Ρ‡ΠΊΠ° памяти. Однако, Ссли Π±Ρ‹ push_back() Π±Ρ‹Π» Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠΌ, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π±Ρ‹ ΠΈ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ°ΠΌΡΡ‚ΡŒ освобоТдалась Π±Ρ‹ автоматичСски, ΠΏΡ€ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π΅ push_back() ΠΈΠ· области видимости (нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ΠΉΠ΄Π΅Ρ‚ Π»ΠΈ функция Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΈΠ· области видимости ΠΈΠ»ΠΈ Π½Π΅Ρ‚). ИмСнно ΠΈΠ·-Π·Π° этого, использованиС std::vector являСтся Π±ΠΎΠ»Π΅Π΅ бСзопасным, Ρ‡Π΅ΠΌ динамичСскоС Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ v

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ – это ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΡ… ΠΏΡ€ΠΈΡ‘ΠΌΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ°. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса, Ρ‚Π°ΠΊ ΠΈ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ любого Π΅Π³ΠΎ класса-наслСдника. ΠŸΡ€ΠΈ этом, Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс опрСдСляСт способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΈ Π»ΡŽΠ±Ρ‹Π΅ Π΅Π³ΠΎ наслСдники ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ этого способа. ΠžΠ±Ρ‰ΠΈΠΉ шаблон объявлСния чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • virtual Ρ‚ΠΈΠΏ_Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° имя_ΠΌΠ΅Ρ‚ΠΎΠ΄Π°(список_Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²)=0; ΠœΠ΅Ρ‚ΠΎΠ΄ Π² классС ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π² классС допустимо ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ Ρ‚Π΅Π»Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ. Π’Π°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом virtual. ЗаканчиваСтся описаниС чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π½Π°ΠΊΠΎΠΌ равСнства ΠΈ Π½ΡƒΠ»Π΅ΠΌ
  • virtual имя_ΠΌΠ΅Ρ‚ΠΎΠ΄Π°(список_Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²) ΠœΠ΅Ρ‚ΠΎΠ΄ Π² классС ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π² классС допустимо ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ Ρ‚Π΅Π»Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ. Π’Π°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом virtual. ЗаканчиваСтся описаниС чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° списком Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²
  • virtual Ρ‚ΠΈΠΏ_Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° (список_Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²)=0; ΠœΠ΅Ρ‚ΠΎΠ΄ Π² классС ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π² классС допустимо ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹. Π’Π°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом virtual. ЗаканчиваСтся описаниС чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π½Π°ΠΊΠΎΠΌ равСнства ΠΈ Π½ΡƒΠ»Π΅ΠΌ

Если сущСствуСт Π΄Π²Π° класса, ΠΎΠ΄ΠΈΠ½ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ, Π΄Ρ€ΡƒΠ³ΠΎΠΉ унаслСдованный ΠΎΡ‚ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ, Ρ‚ΠΎ ΠΏΡ€ΠΈ нСобходимости Π²Ρ‹Π·ΠΎΠ²Π°, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 Π²Ρ‹Π·ΠΎΠ² конструктора Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса
  • 2 Π²Ρ‹Π·ΠΎΠ² конструктора унаслСдованного класса
  • 3 компиляция

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ классов …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎ ΠΈ схСма ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ
  • описываСт Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° Β«ΠΈΠΌΠ΅Π΅Ρ‚Β»
  • описываСт Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° «являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽΒ»
  • ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎ ΠΈ наслСдствСнноС Π΄Π΅Ρ€Π΅Π²ΠΎ

Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ситуации, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Π΄Π²Π° основных Ρ‚ΠΈΠΏΠ°:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • простыС ΠΈ слоТныС
  • с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ Π±Π΅Π· Π΄Π°Π½Π½Ρ‹Ρ…
  • синхронныС ΠΈ асинхронныС

ИспользованиС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ родствСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² относят ΠΊ:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • элСмСнтам ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ наслСдования Π² ООП
  • элСмСнтам абстрагирования
  • элСмСнтам инкапсуляции Π΄Π°Π½Π½Ρ‹Ρ…

Как Ρ€Π΅ΡˆΠΈΡ‚ΡŒ вопрос ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· спСцификаторов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ наслСдовании? Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс прСдставляСт собой ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½ΡƒΡŽ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса. Π’ случаС, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса прСдоставляСт доступ ΠΊΠ°ΠΊ ΠΊ ΠΎΠ±Ρ‰ΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса, Ρ‚Π°ΠΊ ΠΈ ΠΊ Π±ΠΎΠ»Π΅Π΅ спСциализированным ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ своСго класса, ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ±Ρ‰ΠΈΠΌ наслСдованиСм. ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ создания ΠΊΠΎΠ΄Π° простого наслСдования:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 Π² классС Π±Ρ‹Π»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Ρ‡Π»Π΅Π½Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ‰ΠΈΠΌΠΈ для всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² этого класса
  • 2 Π²Π²Π΅Π»ΠΈ измСнСния, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ (нСзависимо ΠΎΡ‚ ΠΏΠΎΠ»Π°, профСссии ΠΈ Ρ‚.Π΄.) ΠΈΠΌΠ΅Π΅Ρ‚ имя ΠΈ возраст
  • 3 для облСгчСния сортировки ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π² класс ΠΌΠ΅Ρ‚ΠΎΠ΄ getName(), Π΄Π°ΡŽΡ‰ΠΈΠΉ доступ ΠΊ ΠΈΠΌΠ΅Π½Π°ΠΌ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово virtual ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • … для использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ
  • … для опрСдСлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ
  • … для объявлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π°Π±Π»ΠΈΡ†Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ?

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • … ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ скрытый элСмСнт
  • … ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ
  • … ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ копирования Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ссылку, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΈΠ½Π°Ρ‡Π΅, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ конструктор Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ рСкурсивно
  • функция-Ρ‡Π»Π΅Π½ класса ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ссылку
  • пСрСмСнная, пСрСдаваСмая ΠΏΠΎ ссылкС, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ ΠΏΠΎΠ΄Ρ‡ΠΈΠ½ΡΡŽΡ‚ΡΡ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΈ …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
  • дСструкторы
  • ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ Π±Ρ‹Π²Π°ΡŽΡ‚ …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ассоциативныС
  • простыС ΠΈ мноТСствСнныС
  • логичСскиС ΠΈ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½Π½Ρ‹Π΅

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

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • … ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ситуации
  • … конструктор копирования
  • … Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΎΠ΅ наслСдованиС – это наслСдованиС, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ созданиС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса основываСтся Π½Π° …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • использовании Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… нСпосрСдствСнных Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классов
  • использовании ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса
  • использовании Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… нСпосрСдствСнных Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… классов

ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ слова, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π΄Π°ΡŽΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ доступа для классов, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… элСмСнтов Π² …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • … ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языках
  • … Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… языках
  • … ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Ρ… языках

Набор согласованных ΠΎΠ±ΠΎΠ±Ρ‰Ρ‘Π½Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ², срСдств доступа ΠΊ ΠΈΡ… содСрТимому ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² C++

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • … Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…
  • … Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° стандартных шаблонов
  • … Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, компилятор автоматичСски создаСт конструктор копирования для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ класса, Π½ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях, программист создаСт конструктор копирования, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • … явным конструктором копирования
  • … нСявным конструктором копирования
  • … конструктором ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ присваивания хранят Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π»Π΅Π²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ. БущСствуСт Π΄Π²Π° Π²ΠΈΠ΄Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ присваивания:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • простоС присваиваниС, мноТСствСнноС присваиваниС
  • логичСскоС присваиваниС, составноС присваиваниС
  • простоС присваиваниС, составноС присваиваниС

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

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • для Π½Π°Ρ‡Π°Π»Π° Π·Π°Ρ‰ΠΈΡ‰Π°Π΅ΠΌ ΠΎΡ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ самоприсваивания, Π·Π°Ρ‚Π΅ΠΌ выдСляСм Β«Π½ΠΎΠ²ΡƒΡŽΒ» ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ элСмСнты. Π”Π°Π»Π΅Π΅, освобоТдаСм Β«ΡΡ‚Π°Ρ€ΡƒΡŽΒ» ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ присваиваСм значСния Π² Β«Π½ΠΎΠ²ΠΎΠΉΒ» памяти ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ
  • для Π½Π°Ρ‡Π°Π»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π±ΠΎΡ€Π° Ρ‡Π»Π΅Π½Π° для Π²Ρ‹Π±ΠΎΡ€Π° Ρ‡Π»Π΅Π½Π° структуры. Π—Π°Ρ‚Π΅ΠΌ выдСляСм Π½ΠΎΠ²Ρ‹ΠΉ массив Π΄Π°Π½Π½Ρ‹Ρ…, Π΄Π°Π»Π΅Π΅ удаляСм массив, Π° Π·Π°Ρ‚Π΅ΠΌ создаСм Π½ΠΎΠ²Ρ‹ΠΉ
  • для Π½Π°Ρ‡Π°Π»Π° объявляСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚ΠΈΠΏΠ° класса, опрСдСляСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Ρ‡Π»Π΅Π½. Π—Π°Ρ‚Π΅ΠΌ связываСм ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ класса, Π΄Π°Π»Π΅Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ значСния Π² Β«Π½ΠΎΠ²ΠΎΠΉΒ» памяти ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ

ΠžΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • Π·Π°Π΄Π°Π½ класс string, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строковой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΌ классС описано Π΄Π²Π° конструктора для возмоТности создания пустой ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ строк. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π·Π°Π΄Π°Π½ΠΎ Π΄Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°: GetString() ΠΈ SetString(), Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ осущСствляСтся доступ ΠΊ массиву buff[], ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΌΡΡ частным элСмСнтом класса. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ класс описываСт ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ строку ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° экран
  • Π·Π°Π΄Π°Π½ класс string, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строковой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΌ классС Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ конструктор для возмоТности создания пустой строки. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π·Π°Π΄Π°Π½ΠΎ Π΄Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°: GetString() ΠΈ SetString(), Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ осущСствляСтся доступ ΠΊ массиву buff[], ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΌΡΡ частным элСмСнтом класса. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ класс описываСт ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ строку ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° экран
  • Π·Π°Π΄Π°Π½ класс string, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строковой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ классС описаны конструкторы для возмоТности создания пустой ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ строк. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π·Π°Π΄Π°Π½ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅Ρ‚ΠΎΠ΄: GetString(), Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ осущСствляСтся доступ ΠΊ массиву buff[], ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΌΡΡ частным элСмСнтом класса

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ‚ΠΈΠΏΡƒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… присвоСно условноС ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ - это...

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
  • шаблон Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
  • Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄

ΠžΡΠΎΠ±Ρ‹ΠΉ Π²ΠΈΠ΄ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для присваивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ – это…

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • … ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания
  • … ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ слоТСния
  • … ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ дСлСния

ΠŸΠ΅Ρ€Π΅Π΄ Π’Π°ΠΌΠΈ ΠΊΠΎΠ΄. ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • Π² этом классС Π΄Π²Π° скрытых поля – health ΠΈ ammo, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ·Π²Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² get_health() ΠΈ get_ammo()
  • Π² этом классС Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ скрытых поля – int x, int y, int scale, int position, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ·Π²Π½Π΅, ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² void draw
  • Π² этом классС ΠΎΠ΄Π½ΠΎ скрытоС ΠΏΠΎΠ»Π΅ – health, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ·Π²Π½Π΅, ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° int get_ammo()

ΠŸΠ΅Ρ€Π΅Π΄ Π’Π°ΠΌΠΈ ΠΊΠΎΠ΄. ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ Π΅Π³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΊΠΎΠ΄ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π½Π° экран Hello world;. Богласно стандарту, Π²Ρ‹Π±ΠΎΡ€ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ осущСствляСтся ΠΏΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Ρƒ «НаиболСС подходящСй Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΒ»
  • ΠΊΠΎΠ΄ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π½Π° экран int:1 bool:1 bool:1. . "Hello world" ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ const char* ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΅Π³ΠΎ ΠΊ POD-Ρ‚ΠΈΠΏΡƒ bool цСлСсообразнСй Ρ‡Π΅ΠΌ ΠΊ Ρ‚ΠΈΠΏΡƒ std::string
  • ΠΊΠΎΠ΄ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π½Π° экран. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ² Π½Π΅Ρ‚

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ количСства ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ Π² Π²ΠΈΠ΄Π΅ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ
  • ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ быстрый доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ
  • ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ доступ ΠΊ конструкторам

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ ΠΈ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΅Π³ΠΎ создания

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…
  • 2 Π²Ρ‹Π²ΠΎΠ΄ Π½Π° экран
  • 3 ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ значСния
  • 4 Π²Ρ‹Π²ΠΎΠ΄ Π½Π° экран Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ с1, с2

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ ΠΈ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΅Π³ΠΎ создания:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° присваивания
  • 2 ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° самоприсваиваниС
  • 3 Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ копирования Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ
  • 4 Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ класс Derv являСтся частным ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌ класса Base. ΠœΡ‹ опрСдСляСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса Derv, располоТСнный Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main(). Π§Π΅Ρ€Π΅Π· Π½Π΅Π³ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • Ρ‡Π»Π΅Π½Π°ΠΌ класса Derv, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ public
  • Ρ‡Π»Π΅Π½Π°ΠΌ класса Derv, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ protected
  • Ρ‡Π»Π΅Π½Π°ΠΌ класса Derv, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ private
  • Ρ‡Π»Π΅Π½Π°ΠΌ класса Base, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ public

ΠŸΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • Π½Π° экран вывСдСтся Β«CΒ»
  • Π½Π° экран вывСдСтся строка Β«Compiler ErrorΒ», Ρ‚.ΠΊ. компилятор ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² строкС 1
  • Π½Π° экран вывСдСтся Β«BΒ»
  • Π½Π° экран вывСдСтся строка Β«Garbage ValueΒ», Ρ‚.ΠΊ. компилятор Π½Π΅ смоТСт Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ конструктор

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания ΠΌΠ΅ΠΆΠ΄Ρƒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° вызываСтся …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • конструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  • конструктор копирования
  • Π² этом случаС Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ конструктор Π½Π΅ вызываСтся

ΠŸΡ€ΠΈ описании Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° с ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ этого ΠΆΠ΅ Ρ‚ΠΈΠΏΠ° вызываСтся …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • конструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  • конструктор копирования
  • конструктор с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π½ΠΈΠΆΠ΅. Π’ Ρ„Π°ΠΉΠ»Π΅ находится ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ количСство Ρ†Π΅Π»Ρ‹Ρ… чисСл. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° считываСт ΠΈΡ… Π² Π²Π΅ΠΊΡ‚ΠΎΡ€ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран. ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° push_back число заносится Π² Π²Π΅ΠΊΡ‚ΠΎΡ€, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ увСличиваСтся автоматичСски
  • 2 организуСтся Ρ†ΠΈΠΊΠ» Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ„Π°ΠΉΠ»Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ· Π½Π΅Π³ΠΎ считываСтся ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число
  • 3 для создания Π²Π΅ΠΊΡ‚ΠΎΡ€Π° v примСняСтся конструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  • 4 записываСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ спСциализация шаблона vector β€” vector

ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΈΡΡ‚ΠΎΡ€ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ: ΠΊΠ°ΠΊ послС появлСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования Ρ€Π°Π·Π²ΠΈΠ²Π°Π»ΠΎΡΡŒ это Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  • 2 ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  • 3 класс-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ открытия Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π² историчСской ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 Ρ‚ΠΊΠ°Ρ†ΠΊΠΈΠΉ станок с ΠΏΠ΅Ρ€Ρ„ΠΎΠΊΠ°Ρ€Ρ‚Π°ΠΌΠΈ
  • 2 аналитичСская машина
  • 3 пСрвая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для аналитичСской ΠΌΠ°ΡˆΠΈΠ½Ρ‹
  • 4 ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ порядок выполнСния ΠΊΠΎΠ΄Π° поэтапно.

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΌΠΈ значСниями
  • 2 вывСсти содСрТимоС
  • 3 ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Π΅ΠΊΡ‚ΠΎΡ€
  • 4 внСсти Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΊΠΎΠ½Π΅Ρ† Π²Π΅ΠΊΡ‚ΠΎΡ€Π°

ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ процСсса написания прСдставлСнного ΠΊΠΎΠ΄Π°:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 создаСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ c класса C
  • 2 ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ rParent ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Ρ‡Π°ΡΡ‚ΡŒ A ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° c
  • 3 Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ rParent.getName()
  • 4 Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ rParent.GetName(), Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π²Ρ‹Π·ΠΎΠ²Ρƒ A::getName()

ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ конструкций ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ситуации:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 catch
  • 2 throw
  • 3 try

ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ стандартных ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎ-Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… классов.

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 std:logic_failure
  • 2 std:exception
  • 3 std:domain_error

ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ классов-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π² языкС C++

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 созданиС пустого ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° (Ρ‡Π΅Ρ€Π΅Π· конструктор)
  • 2 ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°
  • 3 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€
  • 4 доступ ΠΊ сохранСнным ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ
  • 5 просмотр количСства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², находящихся Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅
  • 6 очистка ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΎΡ‚ всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²
  • 7 сортировка ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²/элСмСнтов (Π½Π΅ всСгда)

ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ созданиС языков программирования Π² историчСской ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (ΠΎΡ‚ старого Π΄ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ):

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 C++
  • 2 Simula
  • 3 Java
  • 4 Python

ΠŸΡ€ΠΎΡ†Π΅ΡΡ создания Π½ΠΎΠ²Ρ‹Ρ… классов, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… наслСдниками ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ классами, ΠΈΠ· ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΈΠ»ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классов– это …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • наслСдованиС
  • ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ
  • абстрагированиС

РСакция Π½Π° ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ - это …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅
  • ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°
  • ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅

Роль наслСдования Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π²:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • сохранСнии ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ обСспСчСнии ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΎΠΊ
  • сокращСнии Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΊΠΎΠ΄Π°, ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠΈ связи ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹
  • ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ иСрархичСской управляСмости

Роль наслСдования Π² ООП такая ΠΆΠ΅, ΠΊΠ°ΠΊ Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠΌ языкС программирования, Ρ‚.Π΅. ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° ΠΈ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ связи ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ситуациях ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, связанныС со мноТСствСнным наслСдованиСм. Рассмотрим Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ. Допустим, Ρ‡Ρ‚ΠΎ Π² ΠΎΠ±ΠΎΠΈΡ… Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классах ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, Π° Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠΌ классС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° с Ρ‚Π°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π½Π΅Ρ‚. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Как Π² этом случаС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классов Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ?

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡƒΡ‚Π΅ΠΌ использования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅Π³ΠΎ класс, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ находится ΠΌΠ΅Ρ‚ΠΎΠ΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Β«ObjC.A::show ( )Β» направляСт нас ΠΊ вСрсии ΠΌΠ΅Ρ‚ΠΎΠ΄Π° show(), ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ классу A, Π° Β«objC.B::show ( )Β» направляСт нас ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌΡƒ классу B, Π‘
  • ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡƒΡ‚Π΅ΠΌ использования ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Β«ObjC.A::show ( )Β» направляСт нас ΠΊ вСрсии ΠΌΠ΅Ρ‚ΠΎΠ΄Π° show(), ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ классу Π‘, Π° Β«objC.B::show ( )Β» направляСт нас ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌΡƒ классу A
  • ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡƒΡ‚Π΅ΠΌ использования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° наслСдования. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Β«ObjC.A::show ( )Β» направляСт нас ΠΊ вСрсии ΠΌΠ΅Ρ‚ΠΎΠ΄Π° show(), ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ классу B, Π° Β«objC.B::show ( )Β» направляСт нас ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌΡƒ классу C

Бинтаксис наслСдования выглядит Ρ‚Π°ΠΊ:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • class имя: Ρ‚ΠΈΠΏ_наслСдования имя_Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ_класса {// ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса}
  • classname имя: имя_Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ_класса {// ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса}
  • class имя: Ρ‚ΠΈΠΏ_наслСдования {// ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса}

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ функция класса, которая вызываСтся ΠΏΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° этого класса ΠΈ прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π²ΠΎ врСмя ΠΈΡ… создания ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ всС Π΄Π°Π½Π½Ρ‹Π΅ Ρ‡Π»Π΅Π½Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ значСния это …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • конструктор
  • … дСструктор
  • … ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ конструктор Π² языкС программирования C++, ΠΈ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования, примСняСмый для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠ°ΠΊ ΠΊΠΎΠΏΠΈΠΈ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • конструктор копирования
  • конструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  • ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ конструктор

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ состоит ΠΈΠ· символа ~ ΠΈ ΠΈΠΌΠ΅Π½ΠΈ класса это …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • … конструктор
  • … дСструктор
  • … ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°

Π‘Ρ‚Π΅ΠΊ – это динамичСская структура сохранСния Π΄Π°Π½Π½Ρ‹Ρ…, которая Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ «послСдний ΠΏΡ€ΠΈΡˆΠ΅Π» β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅Π»Β» (Last-In First-Out). Π’ стСкС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… элСмСнтов производится с ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ†Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся Π²Π΅Ρ€ΡˆΠΈΠ½ΠΎΠΉ стСка. ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ стСка эффСктивна, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ: ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ прилоТСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²; синтаксичСский Π°Π½Π°Π»ΠΈΠ· Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π’Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° попросит ввСсти ΡˆΠ΅ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Ρ… Ρ†Π΅Π»Ρ‹Ρ… чисСл. НапримСр: 9 5 2 1 5 6. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ строку, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 6. Π”Π°Π»Π΅Π΅, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ удалСния Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ элСмСнта. Π—Π°Ρ‚Π΅ΠΌ, ΠΎΠΏΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 5. Π”Π°Π»Π΅Π΅, вывСдСтся строка – Β«Process returned 0 (0x0) execution time: 0.010 s. Press any key to continue
  • ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° попросит ввСсти ΡˆΠ΅ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Ρ… Ρ†Π΅Π»Ρ‹Ρ… чисСл. НапримСр: 9 5 2 1 5 6. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ строку, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 9. Π”Π°Π»Π΅Π΅, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ удалСния Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ элСмСнта. Π—Π°Ρ‚Π΅ΠΌ, ΠΎΠΏΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 5
  • ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° попросит ввСсти ΠΏΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Ρ… Ρ†Π΅Π»Ρ‹Ρ… чисСл. НапримСр: 5 2 1 5 6. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ строку, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 6. Π”Π°Π»Π΅Π΅, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ добавлСния Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ элСмСнта. Π—Π°Ρ‚Π΅ΠΌ, ΠΎΠΏΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка. Π”Π°Π»Π΅Π΅ вывСдСтся строка – Β«Process returned 0 (0x0) execution time : 0.010 s. Press any key to continue

Бущности, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ для получСния доступа ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅.

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹
  • классы
  • ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ написания ΠΊΠΎΠ΄Π°:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

  • 1 пишСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ количСства часов прСподаватСля
  • 2 пишСм Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ имя отчСство учитСля
  • 3 пишСм Π²Ρ‹Π²ΠΎΠ΄ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ ΠΈΠΌΠ΅Π½ΠΈ отчСства учитСля
  • 4 пишСм Π²Ρ‹Π²ΠΎΠ΄ Β«ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π° часов:Β»

УстановитС соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ ΠΈ ΠΈΡ… значСниями:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: БопоставлСниС

  • A. =
  • B. *=
  • C. /=
  • D. сохранСниС значСния Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ
  • E. ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ значСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°, сохранСниС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ
  • F. Π΄Π΅Π»Π΅Π½ΠΈΠ΅ значСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°, сохранСниС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ

УстановитС соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ открытиями ΠΈ ΠΈΡ… создатСлями:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: БопоставлСниС

  • A. пСрвая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для аналитичСской ΠΌΠ°ΡˆΠΈΠ½Ρ‹
  • B. аналитичСская машина
  • C. Ρ‚ΠΊΠ°Ρ†ΠΊΠΈΠΉ станок с ΠΏΠ΅Ρ€Ρ„ΠΎΠΊΠ°Ρ€Ρ‚Π°ΠΌΠΈ
  • D. Ада Августа ЛавлСйс
  • E. Π§Π°Ρ€Π»ΡŒΠ· Π‘Π΅Π±Π±ΠΈΠ΄ΠΆ
  • F. Π–ΠΎΠ·Π΅Ρ„ ΠœΠ°Ρ€ΠΈ Π–Π°ΠΊΠΊΠ°Ρ€

УстановитС соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°ΠΌΠΈ ΠΈ опрСдСлСниями:

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: БопоставлСниС

  • A. ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ
  • B. инкапсуляция
  • C. абстрагированиС
  • D. наслСдованиС
  • E. ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π³Π΄Π΅ Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π²ΠΎΠ΅Π΄ΠΈΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ управлСния
  • F. ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ быстрой ΠΈ Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ своСй иСрархичСской управляСмости
  • G. ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ учитываСтся всС самоС Π²Π°ΠΆΠ½ΠΎΠ΅ Π² ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π΅, для модСлирования ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ
  • H. ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ создания класса, Π½Π° Π±Π°Π·Π΅ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ, ΠΏΡ€ΠΈ этом, Ρƒ нас Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ (свойствами ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠ±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ

УстановитС соотвСтствия ΠΌΠ΅ΠΆΠ΄Ρƒ языками ΠΈ Π²ΠΈΠ΄Π°ΠΌΠΈ программирования.

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: БопоставлСниС

  • A. Π‘++
  • B. 1C
  • C. Haskell
  • D. ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  • E. ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  • F. Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π§Ρ‚ΠΎ рСализуСтся Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ), Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹?

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ
  • абстрагированиС
  • инкапсуляция

Π§Ρ‚ΠΎΠ±Ρ‹ Π² Π±Π»ΠΎΠΊΠ΅ try ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π±Π»ΠΎΠΊΠ° try ΠΈΠ»ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая вызываСтся ΠΈΠ· Π±Π»ΠΎΠΊΠ° try. ΠžΠ±Ρ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° throw: throw ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅; Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° throw гСнСрируСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. Π­Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½ΠΎ Π² Π±Π»ΠΎΠΊΠ΅ catch. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования Π±Π»ΠΎΠΊΠ° try…catch. ДСмонстрируСтся использованиС Π±Π»ΠΎΠΊΠ° try…catch для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ выраТСния. Π’ Π΄Π°Π½Π½ΠΎΠΌ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, Π² Ρ‚Ρ€Π΅Ρ… случаях ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ситуация: - ΠΊΠΎΡ€Π΅Π½ΡŒ ΠΈΠ· ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ числа a, Ссли a<0, - ΠΊΠΎΡ€Π΅Π½ΡŒ ΠΈΠ· ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ числа b, Ссли b<0, - Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° 0, Ссли b=0. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Π² Π±Π»ΠΎΠΊΠ΅ try…catch, Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ эти Ρ‚Ρ€ΠΈ случая. ВСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ‚ΠΈΠΏΠ° Console Application ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ. Какой Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹?

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²Π΅Π΄Π΅Ρ‚ a = 5 ΠΈ b = 0, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ ошибки Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ: Β«Division by 0Β»
  • Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²Π΅Π΄Π΅Ρ‚ a = 5 ΠΈ b = 0, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ ошибки Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ: Β«Negative rootΒ»
  • Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²Π΅Π΄Π΅Ρ‚ a = 2 ΠΈ b = 0, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ ошибки Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ: Β«Out of rangeΒ»

Π¨Π°Π±Π»ΠΎΠ½ для создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ значСния состояний: инициализация ΠΏΠΎΠ»Π΅ΠΉ-ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ рСализация повСдСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² – это …

Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

  • класс
  • ΠΎΠ±ΡŠΠ΅ΠΊΡ‚
  • ΠΌΠ΅Ρ‚ΠΎΠ΄
     
            ОписаниС
            Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° 62 Π²ΠΎΠΏΡ€ΠΎΡΠ°Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ 90...100 Π±Π°Π»Π»ΠΎΠ² ΠΈΠ· 100вопросы отсортированы Π² лСксикографичСском порядкС 
            ОглавлСниС
            Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Π’Π΅ΠΌΠ° 1. ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ класса ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π”Π°Π½Π½Ρ‹Π΅-Ρ‡Π»Π΅Π½Ρ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Ρ‡Π»Π΅Π½Ρ‹ (ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹)Π’Π΅ΠΌΠ° 2. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ дСструкторы классовВСма 3. ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ присваиваниС для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² классаВСма 4. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ наслСдования ΠΈ Π΅Π³ΠΎ рСализация срСдствами языка программирования Π‘++Π’Π΅ΠΌΠ° 5. Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ классы. ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΎΠ΅ наслСдованиСВСма 6. ΠšΠ»Π°ΡΡΡ‹-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹Π’Π΅ΠΌΠ° 7. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉΠ’ прСдставлСнной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ throw, try ΠΈ catch вмСстС. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ: We caught an int exception with value -1. Continuing our way! ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π±Π»ΠΎΠΊΠΈ.  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ try ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ -1 Ρ‚ΠΈΠΏΠ° int. Π—Π°Ρ‚Π΅ΠΌ Π±Π»ΠΎΠΊ throw ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ try ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±Π»ΠΎΠΊ catch, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° int. Π‘Π»ΠΎΠΊ catch Ρ‚ΠΈΠΏΠ° int ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ сообщСниС ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ -1 Ρ‚ΠΈΠΏΠ° int. Π—Π°Ρ‚Π΅ΠΌ Π±Π»ΠΎΠΊ try ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±Π»ΠΎΠΊ catch, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° int. Π‘Π»ΠΎΠΊ catch Ρ‚ΠΈΠΏΠ° int ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ сообщСниС ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw опрСдСляСт Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ -1 Ρ‚ΠΈΠΏΠ° int. ПослС Ρ‡Π΅Π³ΠΎ Π±Π»ΠΎΠΊ try удаляСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ Π±Π»ΠΎΠΊ catch, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠ’ C ++ функция ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²throwcatchtryΠ’Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΈ наслСдовании - это ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ - ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса-ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ°. Если Π² классС-Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ ΠΈ Π² Π΅Π³ΠΎ классах-ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ°Ρ… Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ‚ΠΎ для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² класса-ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ°, компилятор Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΠΌΠ΅Π½Π½ΠΎ класса-ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ°. ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса-ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ°, ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса-родитСля. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС, Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ дСйствия с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Β«::Β». Π˜Π½Π°Ρ‡Π΅, компилятор воспримСт это, ΠΊΠ°ΠΊ Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ самой сСбя. Наглядно, Ссли Π±Ρ‹ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΈΠ»ΠΈ Π² классС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ - это выглядСло Π±Ρ‹ Ρ‚Π°ΠΊ. ΠžΠΏΠΈΡˆΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ данная запись ΠΊΠΎΠ΄Π°:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовэта запись ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ компилятору β€” Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ FirstClass Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ β€” Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ show_value() класса value. А ΠΎΠ½, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° экранСэта запись ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ компилятору β€” Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ value Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ β€” Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ FirstClass класса show_value(). А ΠΎΠ½, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° экранСэта запись ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ компилятору β€” Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ value Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ β€” Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ show_value() класса FirstClass. А ΠΎΠ½, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° экранСВарианты использования (ΠΊΡ€ΠΎΠΌΠ΅ всСго ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ) Π½ΡƒΠΆΠ½Ρ‹ для:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовполучСния свСдСний ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ…, Π²ΠΎΠ·Π½ΠΈΠΊΡˆΠΈΡ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π² классах ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ конструкторыобСспСчСния Π²Ρ‹Π±ΠΎΡ€Π° подходящих Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² классаВСкторы β€” это ΡƒΠΌΠ½Ρ‹Π΅ массивы. Они Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ автоматичСским Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ сСбя Π² памяти, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ ΠΈ суТСниСм своСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ вставки ΠΈΠ»ΠΈ удалСния Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠ΅Ρ€Π΅ ΠΊΠ°ΠΊ массивы, ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ элСмСнтам, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° []. Π‘Π»ΡƒΡ‡Π°ΠΉΠ½Ρ‹ΠΉ доступ выполняСтся ΠΎΡ‡Π΅Π½ΡŒ быстро Π² Π²Π΅ΠΊΡ‚ΠΎΡ€Π°Ρ…. Π’Π°ΠΊΠΆΠ΅, довольно быстро осущСствляСтся Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ‚Π°Π»ΠΊΠΈΠ²Π°Π½ΠΈΠ½ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ½Π΅Ρ† Π²Π΅ΠΊΡ‚ΠΎΡ€Π°. Когда это происходит, Ρ€Π°Π·ΠΌΠ΅Ρ€ Π²Π΅ΠΊΡ‚ΠΎΡ€Π° автоматичСски увСличиваСтся для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ ΠΊΡƒΠ΄Π° Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Рассмотрим ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ дСмонстрируСт Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€.  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ insert(). ΠœΠ΅Ρ‚ΠΎΠ΄ insert() ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°: Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅ располоТСниС Π½ΠΎΠ²ΠΎΠ³ΠΎ элСмСнта Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта. ΠŸΡ€ΠΈΠ±Π°Π²Π»ΡΠ΅ΠΌ Π΄Π²Π΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ выполнСния ΠΌΠ΅Ρ‚ΠΎΠ΄Π° begin(), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ элСмСнту β„– 2 (Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ элСмСнт Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅, считая с нуля). Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΎΡ‚ Ρ‚ΠΎΡ‡ΠΊΠΈ вставки Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΡΠ΄Π²ΠΈΠ³Π°ΡŽΡ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ мСсто для размСщСния вставляСмого. Π Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° автоматичСски увСличиваСтся Π½Π° Сдиницудля создания Π²Π΅ΠΊΡ‚ΠΎΡ€Π° v ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΉ конструктор Π²Π΅ΠΊΡ‚ΠΎΡ€Π° Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Как с Π»ΡŽΠ±Ρ‹ΠΌΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ STL, для задания Ρ‚ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² Π²Π΅ΠΊΡ‚ΠΎΡ€Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡˆΠ°Π±Π»ΠΎΠ½Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС это Ρ‚ΠΈΠΏ int). ΠœΡ‹ Π½Π΅ опрСдСляСм Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, поэтому Π²Π½Π°Ρ‡Π°Π»Π΅ ΠΎΠ½ Ρ€Π°Π²Π΅Π½ 0. ΠœΠ΅Ρ‚ΠΎΠ΄ push_back() вставляСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ своСго Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° Π² ΠΊΠΎΠ½Π΅Ρ† Π²Π΅ΠΊΡ‚ΠΎΡ€Π° (ΠΊΠΎΠ½Π΅Ρ† располагаСтся Ρ‚Π°ΠΌ, Π³Π΄Π΅ находится самый большой индСкс). Начало Π²Π΅ΠΊΡ‚ΠΎΡ€Π° (элСмСнт с индСксом 0), Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ списков ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π΅ΠΉ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для вставки Π½ΠΎΠ²Ρ‹Ρ… элСмСнтовСсли ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ main ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Ρ‚ΠΎ push_back() Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½, ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ освобоТдСна ΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΡƒΡ‚Π΅Ρ‡ΠΊΠ° памяти. Однако, Ссли Π±Ρ‹ push_back() Π±Ρ‹Π» Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠΌ, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π±Ρ‹ ΠΈ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ°ΠΌΡΡ‚ΡŒ освобоТдалась Π±Ρ‹ автоматичСски, ΠΏΡ€ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π΅ push_back() ΠΈΠ· области видимости (нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ΠΉΠ΄Π΅Ρ‚ Π»ΠΈ функция Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΈΠ· области видимости ΠΈΠ»ΠΈ Π½Π΅Ρ‚). ИмСнно ΠΈΠ·-Π·Π° этого, использованиС std::vector являСтся Π±ΠΎΠ»Π΅Π΅ бСзопасным, Ρ‡Π΅ΠΌ динамичСскоС Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ vΠ’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ – это ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΡ… ΠΏΡ€ΠΈΡ‘ΠΌΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ°. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса, Ρ‚Π°ΠΊ ΠΈ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ любого Π΅Π³ΠΎ класса-наслСдника. ΠŸΡ€ΠΈ этом, Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс опрСдСляСт способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΈ Π»ΡŽΠ±Ρ‹Π΅ Π΅Π³ΠΎ наслСдники ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ этого способа. ΠžΠ±Ρ‰ΠΈΠΉ шаблон объявлСния чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²virtual Ρ‚ΠΈΠΏ_Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° имя_ΠΌΠ΅Ρ‚ΠΎΠ΄Π°(список_Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²)=0; ΠœΠ΅Ρ‚ΠΎΠ΄ Π² классС ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π² классС допустимо ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ Ρ‚Π΅Π»Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ. Π’Π°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом virtual. ЗаканчиваСтся описаниС чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π½Π°ΠΊΠΎΠΌ равСнства ΠΈ Π½ΡƒΠ»Π΅ΠΌvirtual имя_ΠΌΠ΅Ρ‚ΠΎΠ΄Π°(список_Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²) ΠœΠ΅Ρ‚ΠΎΠ΄ Π² классС ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π² классС допустимо ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ Ρ‚Π΅Π»Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ. Π’Π°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом virtual. ЗаканчиваСтся описаниС чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° списком Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²virtual Ρ‚ΠΈΠΏ_Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° (список_Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²)=0; ΠœΠ΅Ρ‚ΠΎΠ΄ Π² классС ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π² классС допустимо ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹. Π’Π°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом virtual. ЗаканчиваСтся описаниС чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π½Π°ΠΊΠΎΠΌ равСнства ΠΈ нулСмЕсли сущСствуСт Π΄Π²Π° класса, ΠΎΠ΄ΠΈΠ½ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ, Π΄Ρ€ΡƒΠ³ΠΎΠΉ унаслСдованный ΠΎΡ‚ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ, Ρ‚ΠΎ ΠΏΡ€ΠΈ нСобходимости Π²Ρ‹Π·ΠΎΠ²Π°, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 Π²Ρ‹Π·ΠΎΠ² конструктора Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса2 Π²Ρ‹Π·ΠΎΠ² конструктора унаслСдованного класса3 ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡΠ˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ классов …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎ ΠΈ схСма организацииописываСт Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° «имССт»описываСт Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° «являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽΒ»ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎ ΠΈ наслСдствСнноС Π΄Π΅Ρ€Π΅Π²ΠΎΠ˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ситуации, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Π΄Π²Π° основных Ρ‚ΠΈΠΏΠ°:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовпростыС ΠΈ слоТныСс Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ Π±Π΅Π· данныхсинхронныС ΠΈ Π°ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½Π½Ρ‹Π΅Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ родствСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² относят ΠΊ:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовэлСмСнтам ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ наслСдования Π² ΠžΠžΠŸΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ абстрагированияэлСмСнтам инкапсуляции Π΄Π°Π½Π½Ρ‹Ρ…ΠšΠ°ΠΊ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ вопрос ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· спСцификаторов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ наслСдовании? Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс прСдставляСт собой ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½ΡƒΡŽ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса. Π’ случаС, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса прСдоставляСт доступ ΠΊΠ°ΠΊ ΠΊ ΠΎΠ±Ρ‰ΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса, Ρ‚Π°ΠΊ ΠΈ ΠΊ Π±ΠΎΠ»Π΅Π΅ спСциализированным ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ своСго класса, ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ±Ρ‰ΠΈΠΌ наслСдованиСм. ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ создания ΠΊΠΎΠ΄Π° простого наслСдования:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 Π² классС Π±Ρ‹Π»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Ρ‡Π»Π΅Π½Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ‰ΠΈΠΌΠΈ для всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² этого класса2 Π²Π²Π΅Π»ΠΈ измСнСния, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ (нСзависимо ΠΎΡ‚ ΠΏΠΎΠ»Π°, профСссии ΠΈ Ρ‚.Π΄.) ΠΈΠΌΠ΅Π΅Ρ‚ имя ΠΈ возраст3 для облСгчСния сортировки ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π² класс ΠΌΠ΅Ρ‚ΠΎΠ΄ getName(), Π΄Π°ΡŽΡ‰ΠΈΠΉ доступ ΠΊ ΠΈΠΌΠ΅Π½Π°ΠΌ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово virtual ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантов… для использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉβ€¦ для опрСдСлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉβ€¦ для объявлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉΠšΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π°Π±Π»ΠΈΡ†Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ?Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантов… ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ скрытый элСмСнт… ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ указатСли… ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ копирования Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ссылку, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΈΠ½Π°Ρ‡Π΅, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ конструктор Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ рСкурсивнофункция-Ρ‡Π»Π΅Π½ класса ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ссылкупСрСмСнная, пСрСдаваСмая ΠΏΠΎ ссылкС, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ ΠΏΠΎΠ΄Ρ‡ΠΈΠ½ΡΡŽΡ‚ΡΡ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΈ …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΠ΄Π΅ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ Π±Ρ‹Π²Π°ΡŽΡ‚ …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ассоциативныСпростыС ΠΈ мноТСствСнныСлогичСскиС ΠΈ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½Π½Ρ‹Π΅ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ языков программирования, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для описания Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ошибки Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ (ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΈ приводят ΠΊ нСвозмоТности дальнСйшСй ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Π΅Ρ‘ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° – это:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантов… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ситуации… конструктор копирования… Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΎΠ΅ наслСдованиС – это наслСдованиС, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ созданиС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса основываСтся Π½Π° …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… нСпосрСдствСнных Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классовиспользовании ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ классаиспользовании Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… нСпосрСдствСнных Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ»Π°ΡΡΠΎΠ²ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ слова, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π΄Π°ΡŽΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ доступа для классов, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… элСмСнтов Π² …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантов… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языках… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… языках… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Ρ… языкахНабор согласованных ΠΎΠ±ΠΎΠ±Ρ‰Ρ‘Π½Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ², срСдств доступа ΠΊ ΠΈΡ… содСрТимому ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² C++Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантов… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ρ‚ΠΈΠΏΠΎΠ² данных… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° стандартных ΡˆΠ°Π±Π»ΠΎΠ½ΠΎΠ²β€¦ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉΠžΠ±Ρ‹Ρ‡Π½ΠΎ, компилятор автоматичСски создаСт конструктор копирования для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ класса, Π½ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях, программист создаСт конструктор копирования, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантов… явным конструктором копирования… нСявным конструктором копирования… конструктором ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ присваивания хранят Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π»Π΅Π²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ. БущСствуСт Π΄Π²Π° Π²ΠΈΠ΄Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ присваивания:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовпростоС присваиваниС, мноТСствСнноС присваиваниСлогичСскоС присваиваниС, составноС присваиваниСпростоС присваиваниС, составноС ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ присваивания ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ – это особый Π²ΠΈΠ΄ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для присваивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ. ЯвляСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· особых Ρ‡Π»Π΅Π½ΠΎΠ²-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ гСнСрируСтся автоматичСски компилятором Π² случаС, Ссли Π½Π΅Ρ‚ явного объявлСния программистом. Код, сгСнСрированный компилятором ΠΈ выполняСт ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ присваивания ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ отличаСтся ΠΎΡ‚ конструктора копирования Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒ Ρ‡Π»Π΅Π½Ρ‹-Π΄Π°Π½Π½Ρ‹Π΅ Ρ†Π΅Π»ΠΈ присваивания (ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ самоприсваиваниС), Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ конструктор копирования присваиваСт значСния Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Ρ‡Π»Π΅Π½Π°ΠΌ-Π΄Π°Π½Π½Ρ‹ΠΌ. ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовдля Π½Π°Ρ‡Π°Π»Π° Π·Π°Ρ‰ΠΈΡ‰Π°Π΅ΠΌ ΠΎΡ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ самоприсваивания, Π·Π°Ρ‚Π΅ΠΌ выдСляСм Β«Π½ΠΎΠ²ΡƒΡŽΒ» ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ элСмСнты. Π”Π°Π»Π΅Π΅, освобоТдаСм Β«ΡΡ‚Π°Ρ€ΡƒΡŽΒ» ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ присваиваСм значСния Π² Β«Π½ΠΎΠ²ΠΎΠΉΒ» памяти ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΡƒΠ΄Π»Ρ Π½Π°Ρ‡Π°Π»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π±ΠΎΡ€Π° Ρ‡Π»Π΅Π½Π° для Π²Ρ‹Π±ΠΎΡ€Π° Ρ‡Π»Π΅Π½Π° структуры. Π—Π°Ρ‚Π΅ΠΌ выдСляСм Π½ΠΎΠ²Ρ‹ΠΉ массив Π΄Π°Π½Π½Ρ‹Ρ…, Π΄Π°Π»Π΅Π΅ удаляСм массив, Π° Π·Π°Ρ‚Π΅ΠΌ создаСм новыйдля Π½Π°Ρ‡Π°Π»Π° объявляСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚ΠΈΠΏΠ° класса, опрСдСляСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Ρ‡Π»Π΅Π½. Π—Π°Ρ‚Π΅ΠΌ связываСм ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ класса, Π΄Π°Π»Π΅Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ значСния Π² Β«Π½ΠΎΠ²ΠΎΠΉΒ» памяти ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΡƒΠžΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²Π·Π°Π΄Π°Π½ класс string, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строковой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΌ классС описано Π΄Π²Π° конструктора для возмоТности создания пустой ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ строк. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π·Π°Π΄Π°Π½ΠΎ Π΄Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°: GetString() ΠΈ SetString(), Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ осущСствляСтся доступ ΠΊ массиву buff[], ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΌΡΡ частным элСмСнтом класса. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ класс описываСт ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ строку ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° экранзадан класс string, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строковой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΌ классС Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ конструктор для возмоТности создания пустой строки. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π·Π°Π΄Π°Π½ΠΎ Π΄Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°: GetString() ΠΈ SetString(), Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ осущСствляСтся доступ ΠΊ массиву buff[], ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΌΡΡ частным элСмСнтом класса. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ класс описываСт ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ строку ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° экранзадан класс string, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строковой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ классС описаны конструкторы для возмоТности создания пустой ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ строк. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π·Π°Π΄Π°Π½ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅Ρ‚ΠΎΠ΄: GetString(), Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ осущСствляСтся доступ ΠΊ массиву buff[], ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΌΡΡ частным элСмСнтом ΠΊΠ»Π°ΡΡΠ°ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ‚ΠΈΠΏΡƒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… присвоСно условноС ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ - это...Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡˆΠ°Π±Π»ΠΎΠ½ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΠ²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠžΡΠΎΠ±Ρ‹ΠΉ Π²ΠΈΠ΄ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для присваивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ – это…Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантов… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ слоТСния… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π΄Π΅Π»Π΅Π½ΠΈΡΠŸΠ΅Ρ€Π΅Π΄ Π’Π°ΠΌΠΈ ΠΊΠΎΠ΄. ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ.  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²Π² этом классС Π΄Π²Π° скрытых поля – health ΠΈ ammo, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ·Π²Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² get_health() ΠΈ get_ammo()Π² этом классС Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ скрытых поля – int x, int y, int scale, int position, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ·Π²Π½Π΅, ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² void drawΠ² этом классС ΠΎΠ΄Π½ΠΎ скрытоС ΠΏΠΎΠ»Π΅ – health, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ·Π²Π½Π΅, ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° int get_ammo()ΠŸΠ΅Ρ€Π΅Π΄ Π’Π°ΠΌΠΈ ΠΊΠΎΠ΄. ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ Π΅Π³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΊΠΎΠ΄ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π½Π° экран Hello world;. Богласно стандарту, Π²Ρ‹Π±ΠΎΡ€ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ осущСствляСтся ΠΏΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Ρƒ «НаиболСС подходящСй Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΒ»ΠΊΠΎΠ΄ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π½Π° экран int:1 bool:1 bool:1. . Hello world ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ const char* ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΅Π³ΠΎ ΠΊ POD-Ρ‚ΠΈΠΏΡƒ bool цСлСсообразнСй Ρ‡Π΅ΠΌ ΠΊ Ρ‚ΠΈΠΏΡƒ std::stringΠΊΠΎΠ΄ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π½Π° экран. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ² Π½Π΅Ρ‚ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ количСства ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ Π² Π²ΠΈΠ΄Π΅ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ быстрый доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡ΡƒΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ доступ ΠΊ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π°ΠΌΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ ΠΈ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΅Π³ΠΎ создания  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…2 Π²Ρ‹Π²ΠΎΠ΄ Π½Π° экран3 ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ значСния4 Π²Ρ‹Π²ΠΎΠ΄ Π½Π° экран Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ с1, с2ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ ΠΈ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΅Π³ΠΎ создания:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° присваивания2 ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° самоприсваиваниС3 Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ копирования Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ4 Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ класс Derv являСтся частным ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌ класса Base. ΠœΡ‹ опрСдСляСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса Derv, располоТСнный Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main(). Π§Π΅Ρ€Π΅Π· Π½Π΅Π³ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²Ρ‡Π»Π΅Π½Π°ΠΌ класса Derv, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ publicΡ‡Π»Π΅Π½Π°ΠΌ класса Derv, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ protectedΡ‡Π»Π΅Π½Π°ΠΌ класса Derv, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ privateΡ‡Π»Π΅Π½Π°ΠΌ класса Base, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ publicΠŸΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²Π½Π° экран вывСдСтся Β«CΒ»Π½Π° экран вывСдСтся строка Β«Compiler ErrorΒ», Ρ‚.ΠΊ. компилятор ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² строкС 1Π½Π° экран вывСдСтся Β«BΒ»Π½Π° экран вывСдСтся строка Β«Garbage ValueΒ», Ρ‚.ΠΊ. компилятор Π½Π΅ смоТСт Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания ΠΌΠ΅ΠΆΠ΄Ρƒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° вызываСтся …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовконструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ копированияв этом случаС Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ конструктор Π½Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡΠŸΡ€ΠΈ описании Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° с ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ этого ΠΆΠ΅ Ρ‚ΠΈΠΏΠ° вызываСтся …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовконструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ копированияконструктор с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π½ΠΈΠΆΠ΅. Π’ Ρ„Π°ΠΉΠ»Π΅ находится ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ количСство Ρ†Π΅Π»Ρ‹Ρ… чисСл. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° считываСт ΠΈΡ… Π² Π²Π΅ΠΊΡ‚ΠΎΡ€ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран. ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° push_back число заносится Π² Π²Π΅ΠΊΡ‚ΠΎΡ€, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ увСличиваСтся автоматичСски2 организуСтся Ρ†ΠΈΠΊΠ» Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ„Π°ΠΉΠ»Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ· Π½Π΅Π³ΠΎ считываСтся ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число3 для создания Π²Π΅ΠΊΡ‚ΠΎΡ€Π° v примСняСтся конструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ4 записываСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ спСциализация шаблона vector β€” vectorΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΈΡΡ‚ΠΎΡ€ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ: ΠΊΠ°ΠΊ послС появлСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования Ρ€Π°Π·Π²ΠΈΠ²Π°Π»ΠΎΡΡŒ это Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅2 ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅3 класс-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ открытия Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π² историчСской ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 Ρ‚ΠΊΠ°Ρ†ΠΊΠΈΠΉ станок с ΠΏΠ΅Ρ€Ρ„ΠΎΠΊΠ°Ρ€Ρ‚Π°ΠΌΠΈ2 аналитичСская машина3 пСрвая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для аналитичСской ΠΌΠ°ΡˆΠΈΠ½Ρ‹4 ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ порядок выполнСния ΠΊΠΎΠ΄Π° поэтапно.  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΌΠΈ значСниями2 вывСсти содСрТимоС3 ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Π΅ΠΊΡ‚ΠΎΡ€4 внСсти Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΊΠΎΠ½Π΅Ρ† Π²Π΅ΠΊΡ‚ΠΎΡ€Π°ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ процСсса написания прСдставлСнного ΠΊΠΎΠ΄Π°:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 создаСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ c класса C2 ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ rParent ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Ρ‡Π°ΡΡ‚ΡŒ A ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° c3 Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ rParent.getName()4 Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ rParent.GetName(), Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π²Ρ‹Π·ΠΎΠ²Ρƒ A::getName()ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ конструкций ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ситуации:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 catch2 throw3 tryΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ стандартных ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎ-Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… классов.Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 std:logic_failure2 std:exception3 std:domain_errorΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ классов-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π² языкС C++Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 созданиС пустого ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° (Ρ‡Π΅Ρ€Π΅Π· конструктор)2 ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°3 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€4 доступ ΠΊ сохранСнным ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ5 просмотр количСства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², находящихся Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅6 очистка ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΎΡ‚ всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²7 сортировка ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²/элСмСнтов (Π½Π΅ всСгда)ΠŸΡ€ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ созданиС языков программирования Π² историчСской ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (ΠΎΡ‚ старого Π΄ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ):Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 C++2 Simula3 Java4 PythonΠŸΡ€ΠΎΡ†Π΅ΡΡ создания Π½ΠΎΠ²Ρ‹Ρ… классов, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… наслСдниками ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ классами, ΠΈΠ· ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΈΠ»ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классов– это …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовнаслСдованиСполиморфизмабстрагированиСРСакция Π½Π° ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ - это …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅Π ΠΎΠ»ΡŒ наслСдования Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π²:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовсохранСнии ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ обСспСчСнии пСрСгрузоксокращСнии Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΊΠΎΠ΄Π°, ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠΈ связи ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ иСрархичСской ΡƒΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌΠΎΡΡ‚ΠΈΠ ΠΎΠ»ΡŒ наслСдования Π² ООП такая ΠΆΠ΅, ΠΊΠ°ΠΊ Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠΌ языкС программирования, Ρ‚.Π΅. ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° ΠΈ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ связи ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ситуациях ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, связанныС со мноТСствСнным наслСдованиСм. Рассмотрим Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ. Допустим, Ρ‡Ρ‚ΠΎ Π² ΠΎΠ±ΠΎΠΈΡ… Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классах ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, Π° Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠΌ классС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° с Ρ‚Π°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π½Π΅Ρ‚. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Как Π² этом случаС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классов Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ?  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡƒΡ‚Π΅ΠΌ использования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅Π³ΠΎ класс, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ находится ΠΌΠ΅Ρ‚ΠΎΠ΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Β«ObjC.A::show ( )Β» направляСт нас ΠΊ вСрсии ΠΌΠ΅Ρ‚ΠΎΠ΄Π° show(), ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ классу A, Π° Β«objC.B::show ( )Β» направляСт нас ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌΡƒ классу B, Π‘ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡƒΡ‚Π΅ΠΌ использования ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Β«ObjC.A::show ( )Β» направляСт нас ΠΊ вСрсии ΠΌΠ΅Ρ‚ΠΎΠ΄Π° show(), ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ классу Π‘, Π° Β«objC.B::show ( )Β» направляСт нас ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌΡƒ классу AΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡƒΡ‚Π΅ΠΌ использования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° наслСдования. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Β«ObjC.A::show ( )Β» направляСт нас ΠΊ вСрсии ΠΌΠ΅Ρ‚ΠΎΠ΄Π° show(), ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ классу B, Π° Β«objC.B::show ( )Β» направляСт нас ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌΡƒ классу CБинтаксис наслСдования выглядит Ρ‚Π°ΠΊ:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²class имя: Ρ‚ΠΈΠΏ_наслСдования имя_Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ_класса {// ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса}classname имя: имя_Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ_класса {// ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса}class имя: Ρ‚ΠΈΠΏ_наслСдования {// ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса}Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ функция класса, которая вызываСтся ΠΏΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° этого класса ΠΈ прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π²ΠΎ врСмя ΠΈΡ… создания ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ всС Π΄Π°Π½Π½Ρ‹Π΅ Ρ‡Π»Π΅Π½Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ значСния это …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовконструктор… дСструктор… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ конструктор Π² языкС программирования C++, ΠΈ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования, примСняСмый для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠ°ΠΊ ΠΊΠΎΠΏΠΈΠΈ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовконструктор копированияконструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ состоит ΠΈΠ· символа ~ ΠΈ ΠΈΠΌΠ΅Π½ΠΈ класса это …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантов… конструктор… дСструктор… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°Π‘Ρ‚Π΅ΠΊ – это динамичСская структура сохранСния Π΄Π°Π½Π½Ρ‹Ρ…, которая Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ «послСдний ΠΏΡ€ΠΈΡˆΠ΅Π» β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅Π»Β» (Last-In First-Out). Π’ стСкС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… элСмСнтов производится с ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ†Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся Π²Π΅Ρ€ΡˆΠΈΠ½ΠΎΠΉ стСка. ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ стСка эффСктивна, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ: ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ прилоТСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²; синтаксичСский Π°Π½Π°Π»ΠΈΠ· Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π’Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° попросит ввСсти ΡˆΠ΅ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Ρ… Ρ†Π΅Π»Ρ‹Ρ… чисСл. НапримСр: 9 5 2 1 5 6. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ строку, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 6. Π”Π°Π»Π΅Π΅, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ удалСния Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ элСмСнта. Π—Π°Ρ‚Π΅ΠΌ, ΠΎΠΏΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 5. Π”Π°Π»Π΅Π΅, вывСдСтся строка – Β«Process returned 0 (0x0) execution time: 0.010 s. Press any key to continueΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° попросит ввСсти ΡˆΠ΅ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Ρ… Ρ†Π΅Π»Ρ‹Ρ… чисСл. НапримСр: 9 5 2 1 5 6. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ строку, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 9. Π”Π°Π»Π΅Π΅, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ удалСния Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ элСмСнта. Π—Π°Ρ‚Π΅ΠΌ, ΠΎΠΏΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 5ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° попросит ввСсти ΠΏΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Ρ… Ρ†Π΅Π»Ρ‹Ρ… чисСл. НапримСр: 5 2 1 5 6. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ строку, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка – 6. Π”Π°Π»Π΅Π΅, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ добавлСния Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ элСмСнта. Π—Π°Ρ‚Π΅ΠΌ, ΠΎΠΏΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка. Π”Π°Π»Π΅Π΅ вывСдСтся строка – Β«Process returned 0 (0x0) execution time : 0.010 s. Press any key to continueБущности, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ для получСния доступа ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅.Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовитСраторыклассыпСрСмСнныСУкаТитС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ написания ΠΊΠΎΠ΄Π°:  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°1 пишСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ количСства часов прСподаватСля2 пишСм Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ имя отчСство учитСля3 пишСм Π²Ρ‹Π²ΠΎΠ΄ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ ΠΈΠΌΠ΅Π½ΠΈ отчСства учитСля4 пишСм Π²Ρ‹Π²ΠΎΠ΄ Β«ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π° часов:»УстановитС соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ ΠΈ ΠΈΡ… значСниями:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: БопоставлСниСA. =B. *=C. /=D. сохранСниС значСния Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌE. ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ значСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°, сохранСниС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌF. Π΄Π΅Π»Π΅Π½ΠΈΠ΅ значСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°, сохранСниС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ опСрандомУстановитС соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ открытиями ΠΈ ΠΈΡ… создатСлями:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: БопоставлСниСA. пСрвая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для аналитичСской ΠΌΠ°ΡˆΠΈΠ½Ρ‹B. аналитичСская машинаC. Ρ‚ΠΊΠ°Ρ†ΠΊΠΈΠΉ станок с ΠΏΠ΅Ρ€Ρ„ΠΎΠΊΠ°Ρ€Ρ‚Π°ΠΌΠΈD. Ада Августа ЛавлСйсE. Π§Π°Ρ€Π»ΡŒΠ· Π‘Π΅Π±Π±ΠΈΠ΄ΠΆF. Π–ΠΎΠ·Π΅Ρ„ ΠœΠ°Ρ€ΠΈ ЖаккарУстановитС соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°ΠΌΠΈ ΠΈ опрСдСлСниями:Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: БопоставлСниСA. ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌB. инкапсуляцияC. абстрагированиСD. наслСдованиСE. ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π³Π΄Π΅ Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π²ΠΎΠ΅Π΄ΠΈΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ управлСнияF. ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ быстрой ΠΈ Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ своСй иСрархичСской управляСмостиG. ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ учитываСтся всС самоС Π²Π°ΠΆΠ½ΠΎΠ΅ Π² ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π΅, для модСлирования ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈH. ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ создания класса, Π½Π° Π±Π°Π·Π΅ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ, ΠΏΡ€ΠΈ этом, Ρƒ нас Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ (свойствами ΠΈ мСтодамбазовогоУстановитС соотвСтствия ΠΌΠ΅ΠΆΠ΄Ρƒ языками ΠΈ Π²ΠΈΠ΄Π°ΠΌΠΈ программирования.Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: БопоставлСниСA. Π‘++B. 1CC. HaskellD. ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅E. ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅F. Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Π§Ρ‚ΠΎ рСализуСтся Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ), Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹?Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовполиморфизмабстрагированиСинкапсуляцияЧтобы Π² Π±Π»ΠΎΠΊΠ΅ try ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ throw ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π±Π»ΠΎΠΊΠ° try ΠΈΠ»ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая вызываСтся ΠΈΠ· Π±Π»ΠΎΠΊΠ° try. ΠžΠ±Ρ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° throw: throw ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅; Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° throw гСнСрируСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. Π­Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½ΠΎ Π² Π±Π»ΠΎΠΊΠ΅ catch. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования Π±Π»ΠΎΠΊΠ° try…catch. ДСмонстрируСтся использованиС Π±Π»ΠΎΠΊΠ° try…catch для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ выраТСния. Π’ Π΄Π°Π½Π½ΠΎΠΌ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, Π² Ρ‚Ρ€Π΅Ρ… случаях ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ситуация: - ΠΊΠΎΡ€Π΅Π½ΡŒ ΠΈΠ· ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ числа a, Ссли a&lt;0, - ΠΊΠΎΡ€Π΅Π½ΡŒ ΠΈΠ· ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ числа b, Ссли b&lt;0, - Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° 0, Ссли b=0. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Π² Π±Π»ΠΎΠΊΠ΅ try…catch, Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ эти Ρ‚Ρ€ΠΈ случая. ВСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ‚ΠΈΠΏΠ° Console Application ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ. Какой Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹?  Π’ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… вариантовСсли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²Π΅Π΄Π΅Ρ‚ a = 5 ΠΈ b = 0, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ ошибки Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ: Β«Division by 0»Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²Π΅Π΄Π΅Ρ‚ a = 5 ΠΈ b = 0, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ ошибки Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ: Β«Negative root»Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²Π΅Π΄Π΅Ρ‚ a = 2 ΠΈ b = 0, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ ошибки Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ: Β«Out of rangeΒ»Π¨Π°Π±Π»ΠΎΠ½ для создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ значСния состояний: инициализация ΠΏΠΎΠ»Π΅ΠΉ-ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ рСализация повСдСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² – это …Вип ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ β€’ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²ΠΊΠ»Π°ΡΡΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΌΠ΅Ρ‚ΠΎΠ΄  
            
            
            Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.ΠΎΠΈ(dor) тСст с ΠΎΡ‚Π²Π΅Ρ‚Π°ΠΌΠΈ БинСргия/МОИ/ МВИ /ΠœΠžΠ‘ΠΠŸπŸ’― Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° тСст БинСргия / МВИ / МосАП, ΠΌΠ°ΠΉ 2023)Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π‘Π˜ΠΠ•Π Π“Π˜Π―. ВСст 2022 ΠΎΡ‚Π²Π΅Ρ‚Ρ‹πŸ’― Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ [Π’Π΅ΠΌΠ° 1-7] (ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° тСсты БинСргия / МОИ / МВИ / МосАП, ΠΎΠΊΡ‚ΡΠ±Ρ€ΡŒ 2023)Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (тСст с ΠΎΡ‚Π²Π΅Ρ‚Π°ΠΌΠΈ БинСргия/МОИ/ МВИ /МОБАП)Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈΡŽΠ’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈΡŽ _ ПР1Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΡƒΡ‡ΠΈΠ½Π³. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ полоТСния ΠΈ философия ΠΊΠΎΡƒΡ‡ΠΈΠ½Π³Π°Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΡƒΡ‡ΠΈΠ½Π³. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ полоТСния ΠΈ философия ΠΊΠΎΡƒΡ‡ΠΈΠ½Π³Π°Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² макроэкономичСский Π°Π½Π°Π»ΠΈΠ· (тСст+вопросы) Π’Π’Π•Π”Π•ΠΠ˜Π• Π’ ΠœΠΠ’Π•ΠœΠΠ’Π˜Π§Π•Π‘ΠšΠ˜Π™ ΠΠΠΠ›Π˜Π— Π²Ρ‹ΡΡˆΠ°Ρ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ° Π·Π°Π΄Π°Π½ΠΈΠ΅ 2 ростдистант Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ‚, Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ 2Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ 8 НГУЭУВвСдСниС Π² Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ (ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½Π°Ρ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ°) тСст с ΠΎΡ‚Π²Π΅Ρ‚Π°ΠΌΠΈ ММА/Π˜Π”Πž