Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π―Π·Ρ‹ΠΊ программирования C++. ΠŸΡΡ‚ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 289

Автор Π‘Ρ‚Π΅Π½Π»ΠΈ Π›ΠΈΠΏΠΏΠΌΠ°Π½

Π‘ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ (bit-field). ЦСлочислСнный Ρ‡Π»Π΅Π½ класса, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ количСство Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… для Π½Π΅Π³ΠΎ Π±ΠΈΡ‚ΠΎΠ². Π‘ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ поля, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² классС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Ρ‹ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ класс (nested class). Класс, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ классС. Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ класс ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰Π΅ΠΉ области видимости: ΠΈΠΌΠ΅Π½Π° Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… классов Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ Π² области видимости Ρ‚ΠΎΠ³ΠΎ класса, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹, Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ Π² областях видимости Π²Π½Π΅ содСрТащСго класса. Доступ ΠΊ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌΡƒ классу ΠΈΠ·Π²Π½Π΅ содСрТащСго класса ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° области видимости, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ (области) видимости, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Π»ΠΎΠΆΠ΅Π½ класс.

Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ (nested type). Π‘ΠΈΠ½ΠΎΠ½ΠΈΠΌ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ класса.

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ (linkage directive). ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π° языкС Π‘++ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, написанныС Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ языкС. Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π‘ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ всС компиляторы языка Π‘++. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π΄Ρ€ΡƒΠ³ΠΈΡ… языков зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ компилятора.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ² Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния (run-time type identification). Π―Π·Ρ‹ΠΊΠΎΠ²Ρ‹Π΅ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Π΅ срСдства, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ динамичСский Ρ‚ΠΈΠΏ ссылки ΠΈΠ»ΠΈ указатСля Π²ΠΎ врСмя выполнСния. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ RTTI, typeid ΠΈ dynamic_cast, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ динамичСского Ρ‚ΠΈΠΏΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ссылок ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° классы с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ функциями. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ, ΠΎΠ½ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ статичСский Ρ‚ΠΈΠΏ ссылки ΠΈΠ»ΠΈ указатСля.

Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ класс (local class). Класс, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ класс Π²ΠΈΠ΄ΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½. ВсС Π΅Π³ΠΎ Ρ‡Π»Π΅Π½Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π² Ρ‚Π΅Π»Π΅ класса. Он Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ статичСских Ρ‡Π»Π΅Π½ΠΎΠ². Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ‡Π»Π΅Π½Ρ‹ класса Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π² содСрТащСй Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Однако ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π° Ρ‚ΠΈΠΏΠΎΠ², статичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ пСрСчислСния, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² содСрТащСй Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

НСпСрСносимый (nonportable). БпСцифичСскиС для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… машин срСдства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΈ пСрСносС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ ΠΈΠ»ΠΈ компилятор.

ОбъСдинСниС (union). ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ классу составной Ρ‚ΠΈΠΏ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ нСсколько ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…-Ρ‡Π»Π΅Π½ΠΎΠ², ΠΎΠ΄Π½Π°ΠΊΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ…. ОбъСдинСния ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Ρ‡Π»Π΅Π½Ρ‹, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ конструкторы ΠΈ дСструкторы, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π² качСствС Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса. По Π½ΠΎΠ²ΠΎΠΌΡƒ стандарту Ρƒ объСдинСний ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‡Π»Π΅Π½Ρ‹-Ρ‚ΠΈΠΏΡ‹, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠ΅ собствСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Ρ‡Π»Π΅Π½Ρ‹ управлСния ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. Π’Π°ΠΊΠΈΠ΅ объСдинСния ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ управлСния ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, Ссли ΠΎΠ½ΠΈ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ управлСния ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ delete. БиблиотСчная функция, ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡŽΡ‰Π°Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π±Π΅Π· контроля Ρ‚ΠΈΠΏΠΎΠ², Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ new. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ delete[] освобоТдаСт ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Π½Π½ΡƒΡŽ массивом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ new[].

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

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ typeid. Π£Π½Π°Ρ€Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΠΉ ссылку Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° type_info, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ выраТСния. Когда Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ класса, ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ динамичСский Ρ‚ΠΈΠΏ. Если Ρ‚ΠΈΠΏΠΎΠΌ являСтся ссылка, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ Π΅Π³ΠΎ статичСский Ρ‚ΠΈΠΏ. Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ вычисляСтся.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ (enumeration). Π’ΠΈΠΏ, Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… цСлочислСнных констант.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ с Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡ‚ΡŒΡŽ видимости (unscoped enumeration). ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅, пСрСчислитСли ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ доступны Π² ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰Π΅ΠΉ области видимости.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡ‚ΡŒΡŽ видимости (scoped enumeration). ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒ Π½Π΅ доступСн нСпосрСдствСнно Π² ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰Π΅ΠΉ области видимости.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒ (enumerator). Π˜ΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ‡Π»Π΅Π½ пСрСчислСния. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒ инициализируСтся константным цСлочислСнным Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ цСлочислСнныС константныС выраТСния.

Π Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ new (placement new). Π€ΠΎΡ€ΠΌΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° new, ΡΠΎΠ·Π΄Π°ΡŽΡ‰Π°Ρ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ области памяти. ΠŸΠ°ΠΌΡΡ‚ΡŒ ΠΎΠ½ Π½Π΅ Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΠ΅Ρ‚, Π° ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ собой Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ Π°Π½Π°Π»ΠΎΠ³ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Ρ‡Π»Π΅Π½Π° construct() класса allocator.

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ volatile. Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚ΠΈΠΏΠ°, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ компилятору Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ ΠΈΠ·Π²Π½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΎ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ компилятору ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π°.

Π’ΠΈΠΏ type_info. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ typeid. Класс type_info ТСстко зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, ΠΎΠ΄Π½Π°ΠΊΠΎ любая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ класс type_info ΠΊΠ°ΠΊ содСрТащий Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ-Ρ‡Π»Π΅Π½ name(), Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΡƒΡŽ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½ΡƒΡŽ строку, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ имя Ρ‚ΠΈΠΏΠ°. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ класса type_info Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ скопированы, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ ΠΈΠ»ΠΈ присвоСны.

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Ρ‡Π»Π΅Π½ класса (pointer to member). Π˜Π½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΈΠΏ класса, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚ΠΈΠΏ элСмСнта, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ указатСля Π½Π° Ρ‡Π»Π΅Π½ класса Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ имя класса, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚ΠΈΠΏ элСмСнта (элСмСнтов), Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ.

Π’ C::*pmem = &Π‘::{member};

Π­Ρ‚ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ опрСдСляСт ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ pmem, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ способСн ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Ρ‡Π»Π΅Π½Ρ‹ класса ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π‘, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΈΠΏ T, ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ адрСсом Ρ‡Π»Π΅Π½Π° класса Π‘ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ member. ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Ρ‚Π°ΠΊΠΎΠ³ΠΎ указатСля ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ связан с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ класса Π‘.

classobj.*pmem;

classptr->*pmem;

ΠžΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Ρ‡Π»Π΅Π½Ρƒ member ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° classobj ΠΈΠ»ΠΈ указатСля classptr.

Ѐункция free(). НизкоуровнСвая функция освобоТдСния памяти, опрСдСлСнная Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ cstdlib. Ѐункция free() ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для освобоТдСния Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠΉ памяти, которая Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ malloc().

Ѐункция malloc(). НизкоуровнСвая функция рСзСрвирования памяти, опрСдСлСнная Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ cstdlib. Π—Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ malloc() ΠΏΠ°ΠΌΡΡ‚ΡŒ слСдуСт ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ free().

Π¨Π°Π±Π»ΠΎΠ½ mem_fn. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΉ шаблон класса, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΠΉ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ указатСля Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ-Ρ‡Π»Π΅Π½.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ 

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ A

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ содСрТит Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎΠ± Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… ΠΈ Ρ€Π°Π·Π΄Π΅Π»Π΅ случайных чисСл Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π’ Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Ρ‚Π°Π±Π». А.1, содСрТащая ΠΈΠΌΠ΅Π½Π° ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌΡ‹Π΅ Π² ΠΊΠ½ΠΈΠ³Π΅.

Π’ Π³Π»Π°Π²Π΅ 10 Π±Ρ‹Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ описана Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°, лСТащая Π² ΠΈΡ… основС. Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ пСрСчислСны всС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, упорядочСнныС ΠΏΠΎ выполняСмым ΠΈΠΌΠΈ опСрациям.

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

А.1. ИмСна ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… этой ΠΊΠ½ΠΈΠ³ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ #include, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для ΠΈΡ… компиляции, практичСски Π½ΠΈΠ³Π΄Π΅ Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ. Для удобства Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ Π² Ρ‚Π°Π±Π». Π.1 пСрСчислСны всС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… ΠΊΠ½ΠΈΠ³ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ½ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹.


Π’Π°Π±Π»ΠΈΡ†Π° А.1. ИмСна ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

Имя Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ abort <cstdlib> accumulate <numeric> allocator <memory> array <array> auto_ptr <memory> back_inserter <iterator> bad_alloc <new> bad_array_new_length <new> bad_cast <typeinfo> begin <iterator> bernoulli_distribution <random> bind <functional> bitset <bitset> boolalpha <iostream> cerr <iostream> cin <iostream> cmatch <regex> copy <algorithm> count <algorithm> count_if <algorithm> cout <iostream> cref <functional> csub_match <regex> dec <iostream> default_float_engine <iostream> default_random_engine <random> deque <deque> domain_error <stdexcept> end <iterator> endl <iostream> ends <iostream> equal_range <algorithm> exception <exception> fill <algorithm> fill_n <algorithm> find <algorithm> find_end <algorithm> find_first_of <algorithm> find_if <algorithm> fixed <iostream> flush <iostream> for_each <algorithm> forward <utility> forward_list <forward_list> free cstdlib front_inserter <iterator> fstream <fstream> function <functional> get <tuple> getline <string> greater <functional> hash <functional> hex <iostream> hexfloat <iostream> ifstream <fstream> initializer_list <initializer_list> inserter <iterator> internal <iostream> ios_base <ios_base> isalpha <cctype> islower <cctype> isprint <cctype> ispunct <cctype> isspace <cctype> istream <iostream> istream_iterator <iterator> istringstream <sstream> isupper <cctype> left <iostream> less <functional> less_equal <functional> list <list> logic_error <stdexcept> lower_bound <algorithm> lround <cmath> make_move_iterator <iterator> make_pair <utility> make_shared <memory> make_tuple <tuple> malloc cstdlib map <map> max <algorithm> max_element <algorithm> mem_fn <functional> min <algorithm> move <utility> multimap <map> multiset <set> negate <functional> noboolalpha <iostream> normal_distribution <random> noshowbase <iostream> noshowpoint <iostream> noskipws <iostream> not1 <functional> nothrow <new> nothrow_t <new> nounitbuf <iostream> nouppercase <iostream> nth_element <algorithm> oct <iostream> ofstream <fstream> ostream <iostream> ostream_iterator <iterator> ostringstream <sstream> out_of_range <stdexcept> pair <utility> partial_sort <algorithm> placeholders <functional> placeholders::_1 <functional> plus <functional> priority_queue <queue> ptrdiff_t <cstddef> queue <queue> rand <random> random_device <random> range_error <stdexcept> ref <functional> regex <regex> regex_constants <regex> regex_error <regex> regex_match <regex> regex_replace <regex> regex_search <regex> remove_pointer <type_traits> remove_reference <type_traits> replace <algorithm> replace_copy <algorithm> reverse_iterator <iterator> right <iostream> runtime_error <stdexcept> scientific <iostream> set <set> set_difference <algorithm> set_intersection <algorithm> set_union <algorithm> setfill <iomanip> setprecision <iomanip> setw <iomanip> shared_ptr <memory> showbase <iostream> showpoint <iostream> size_t <cstddef> skipws <iostream> smatch <regex> sort <algorithm> sqrt <cmath> sregex_iterator <regex> ssub_match <regex> stable_sort <algorithm> stack <stack> stoi <string> strcmp <cstring> strcpy <cstring> string <string> stringstream <sstream> strlen <cstring> strncpy <cstring> strtod <string> swap <utility> terminate <exception> time <ctime> tolower <cctype> toupper <cctype> transform <algorithm> tuple <tuple> tuple_element <tuple> tuple_size <tuple> type_info <typeinfo> unexpected <exception> uniform_int_distribution <random> uniform_real_distribution <random> uninitialized_copy <memory> uninitialized_fill <memory> unique <algorithm> unique_copy <algorithm> unique_ptr <memory> unitbuf <iostream> unordered_map <unordered_map> unordered_multimap <unordered_map> unordered_multiset <unordered_set> unordered_set <unordered_set> upper_bound <algorithm> uppercase <iostream> vector <vector> weak_ptr <memory>

А.2. ΠšΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²