ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ (#8.6). ΠΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ (#6.6-8) ΠΈ ΠΎΠΏΡΠ΅Π΄Π»ΡΠ΅ΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ (#8.5.6). Π€ΡΠ½ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΈΡ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², Π½ΠΎ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π½ΠΈΡ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ»ΡΡΠ°Ρ, ΠΊΠΎΠ³Π΄Π° ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΈΠΌΠ΅Π΅Ρ ΡΡΡΠ»ΠΎΡΠ½ΡΠΉ ΡΠΈΠΏ.
Π€ΡΠ½ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠΏΠΈΡΠ°Π½Π° ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ°Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΡΠ΅ΠΌ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ (#8.4). ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΈΠΏΠ° float, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π΅Ρ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΡΡΡΡ ΠΊ ΡΠΈΠΏΡ double; ΠΈ, ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, ΠΈΠΌΠ΅Π½Π° ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΡΡΡΡ ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌ. ΠΠΎΡΠ΄ΠΎΠΊ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠ·ΡΠΊΠΎΠΌ; ΠΈΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°ΠΌΠΈ.
ΠΠΎΠΏΡΡΡΠΈΠΌΡ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ Π»ΡΠ±ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
ΠΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΡΠΎΠΈΡ ΡΠΎΡΠΊΠ°, Π·Π° ΠΊΡΠΎΡΠΎΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ (ΠΈΠ»ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΡΡΠΎΡΠ½Π΅Π½Π½ΡΠΉ typedef-ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ::) ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ ΠΊΠ»Π°ΡΡΠ°, Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π½ ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠΌΠ΅Π½Π²Π°Π½Π½ΡΠΉ ΡΠ»Π΅Π½ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΈ ΠΎΠ½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π΄ΡΠ΅ΡΠ½ΡΠΌ, Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π΄ΡΠ΅ΡΠ½ΡΠΌ. Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Β«ΠΊΠ»Π°ΡΡΠΎΠ²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡΒ» ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΡΡΡΠΊΡΡΡΠ°ΠΌΠΈ (#8.5.12) ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡΠΌΠΈ (#8.5.13).
ΠΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΡΠΎΠΈΡ ΡΡΡΠ΅Π»ΠΊΠ° ( -Β»
), Π·Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ (ΠΈΠ»ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΡΡΠΎΠ½Π΅Π½Π½ΡΠΉ typedef-ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ::) ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΡΡΠ°ΠΆΠ½ΠΈΠ΅ΠΌ. ΠΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΠ°, Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π½ ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π΄ΡΠ΅ΡΠΎΠΌ, ΡΡΡΠ»Π°ΡΡΠΈΠΌΡΡ Π½Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ»Π΅Π½ ΠΊΠ»Π°ΡΡΠ°, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. Π’Π°ΠΊ, Π²ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ E1-Β»MOS Π΅ΡΡΡ ΡΠΎ ΠΆΠ΅, ΡΡΠΎ ΠΈ (*E1).MOS. ΠΠ»Π°ΡΡΡ ΠΎΠ±ΡΡΠΆΠ΄ΡΡΡΡ Π² #8.5.
ΠΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° Β«ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ...Β» (ΡΠΌ. #8.4 and #8.6.3), Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π±ΡΠ» ΠΎΠ±Π΅ΠΊΡ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΠΌΡΠΉ ΡΡΡΠ»ΠΊΠΎΠΉ. Π‘ΡΡΠ»ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΈΡΠ°ΡΡ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΎΠ±ΡΠ΅ΡΠ°, ΡΠΌ. #8.6.3.
7.2 Π£Π½Π°ΡΠ½ΡΠ΅ ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΡΠ½Π°ΡΠ½ΡΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ Π³ΡΡΠΏΠΏΠΈΡΡΡΡ ΡΠΏΡΠ°Π²Π° Π½Π°Π»Π²ΠΎ:
ΡΠ½Π°ΡΠ½ΠΎΠ΅_Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅: ΡΠ½Π°ΡΠ½Π°Ρ_ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ++ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ β sizeof Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ sizeof ( ΠΈΠΌΡ_ΡΠΈΠΏΠ° ) ( ΠΈΠΌΡ_ΡΠΈΠΏΠ° ) Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠΎΠ΅_ΠΈΠΌΡ_ΡΠΈΠΏΠ° ( ΡΠΏΠΈΡΠΎΠΊ_Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ) new ΠΈΠΌΡ_ΡΠΈΠΏΠ° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡ opt new ( ΠΈΠΌΡ_ΡΠΈΠΏΠ° ) delete Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ delete [ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ] Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ½Π°ΡΠ½Π°Ρ_ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ: ΠΎΠ΄Π½Π° ΠΈΠ· * amp; β ! ~ ++ β
Π£Π½Π°ΡΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ * ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΊΠΎΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅: Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ lvalue, ΡΡΡΠ»Π°ΡΡΠ΅Π΅ΡΡ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ Β«ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ...Β», ΡΠΎ ΡΠΈΠΏ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° Π΅ΡΡΡ Β«...Β».
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ½Π°ΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ amp; ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ»Π°Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°Π½Π΄. ΠΠΏΠ΅ΡΠ°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ lvalue. ΠΡΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ Β«...Β», ΡΠΎ ΡΠΈΠΏ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° Π΅ΡΡΡ Β«ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ...Β».
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ½Π°ΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ + ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΅Π΅ ΠΎΠΏΡΠ°Π½Π΄Π° ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ. ΠΠΏΠ΅ΡΠ°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΈΠΏΠ°.
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ½Π°ΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ β ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΅Π΅ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°. ΠΠΏΠ΅ΡΠ°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ ΡΠ΅Π»ΡΠΉ ΡΠΈΠΏ. ΠΡΠΏΠΎΠ½ΡΡΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠ΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π²ΡΡΠΈΡΠ»ΡΡΡΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π²ΡΡΠΈΡΠ½ΠΈΡ Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· 2n, Π³Π΄Π΅ n -ΡΠΈΡΠ»ΠΎ Π±ΠΈΡΠΎΠ² Π² ΡΠ΅Π»ΠΎΠΌ ΡΠΈΠΏΠ° int.
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΡΡΠΈΡΠ°Π½ΠΈΡ ! ΡΠ²Π»ΡΠ΅ΡΡΡ 1, Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π° 0, ΠΈ 0, Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π° Π½Π΅ 0. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ int. ΠΡΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΊ Π»ΡΠ±ΠΎΠΌΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΡΠΈΠΏΡ ΠΈΠ»ΠΈ ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌ.
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ ~ Π΄Π°Π΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π° Π΄ΠΎ Π΅Π΄ΠΈΠ½ΠΈΡΡ. ΠΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠ΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠΏΠ΅ΡΠ°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ.
7.2.1 Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΈ Π£ΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΏΠ΅ΡΠ°Π½Π΄ ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ++ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΏΡΠΈΡΠ°ΡΠ΅Π½ΠΈΠ΅. ΠΠΏΠ΅ΡΠ°Π½Π΄ Π΄ΠΎΠΆΠ΅Π½ Π±ΡΡΡ Π°Π΄ΡΠ΅ΡΠ½ΡΠΌ . ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°Π΄Π°, Π½ΠΎ ΠΎΠ½ΠΎ Π½Π΅ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠ΅. ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ++x ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ x+=1. ΠΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ Π΄Π°Π½Π½ΡΡ ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡΡ ΡΠΌ. ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠ»ΠΆΠ΅Π½ΠΈΡ (#7.4) ΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ (#7.14).
ΠΠΏΠ΅ΡΠ°Π½Π΄ ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ β ΡΠΌΠ΅Π½ΡΡΠ°Π΅ΡΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ++.
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΠΎΠ΅ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΡΡΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ++, Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°. ΠΠΏΠ΅ΡΠ°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π°Π΄ΡΠ΅ΡΠ½ΡΠΌ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΡΠΌΠ΅ΡΠ΅Π½, ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ++. Π’ΠΈΠΏ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΡΠΎΡ ΠΆΠ΅, ΡΡΠΎ ΠΈ ΡΠΈΠΏ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°.
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΠΎΠ΅ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΡΡΡΠΈΠΊΡΠ½ΠΎΠΉ β, Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°. ΠΠΏΠ΅ΡΠ°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π°Π΄ΡΠ΅ΡΠ½ΡΠΌ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΡΠΌΠ΅ΡΠ΅Π½, ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ++. Π’ΠΈΠΏ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΡΠΎΡ ΠΆΠ΅, ΡΡΠΎ ΠΈ ΡΠΈΠΏ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°.
7.2.2 Sizeof
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ sizeof Π΄Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π° Π² Π±Π°ΠΉΡΠ°Ρ . (ΠΠ°ΠΉΡ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠ·ΡΠΊΠΎΠΌ ΠΈΠ½Π°ΡΠ΅, ΡΠ΅ΠΌ ΡΠ΅ΡΠ΅Π· Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ sizeof. ΠΠ΄Π½Π°ΠΊΠΎ, Π²ΠΎ Π²ΡΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡ Π±Π°ΠΉΡ Π΅ΡΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, Π½ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ char.) ΠΡΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊ ΠΌΠ°ΡΡΠΈΠ²Ρ ΡΠ·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±Π°ΠΉΡΠΎΠ² Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. Π Π°Π·ΠΌΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΈΠ· ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², Π²Ρ ΠΎΠ΄ΡΡΠΈΡ Π² Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. Π‘ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΎΠΉ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΎ Π² Π»ΡΠ±ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅, Π³Π΄Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΡΠ°ΡΠ°.
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ sizeof ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΊ Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠΌΡ Π² ΡΠΊΠΎΠ±ΠΊΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΡΠΈΠΏΠ°. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½Π° Π΄Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ, Π² Π±Π°ΠΉΡΠ°Ρ , ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°.
7.2.3 Π―Π²Π½ΠΎΠ΅ ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π’ΠΈΠΏΠ°
ΠΡΠΎΡΡΠΎΠ΅_ΠΈΠΌΡ_ΡΠΈΠΏΠ° (#8.2), Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ Π² ΡΠΊΠΎΠ±ΠΊΠΈ, Π·Π° ΠΊΠΎΡΠΎΡΡΠΌ ΠΈΠ΄Π΅Ρ Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ Π² ΡΠΊΠΎΠ±ΠΊΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ ΡΠΏΡΠΎΠΊ_Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, Π΅ΡΠ»ΠΈ ΡΠΈΠΏ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»Π°ΡΡΠΎΠΌ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΌ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠΌ #8.5.5) Π²Π»Π΅ΡΠ΅Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² Π½Π°Π·Π²Π°Π½Π½ΡΠΉ ΡΠΈΠΏ. Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·Π²Π°Π½ΠΈΠ΅ Π² ΡΠΈΠΏ, Π½Π΅ ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, ΠΈΠΌΡ_ΡΠΈΠΏΠ° (#8.7) Π΄ΠΎΠ»Π½ΠΎ Π±ΡΡΡ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π² ΡΠΊΠΎΠ±ΠΊΠΈ. ΠΡΠ»ΠΈ ΠΈΠΌΡ ΡΠΈΠΏΠ° Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π² ΡΠΊΠΎΠ±ΠΊΠΈ, Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠΊΠΎΠ±ΠΊΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ. Π’Π°ΠΊΠ°Ρ Π·Π°ΠΏΠΈΡΡ Π½Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΊ ΡΠΈΠΏΡ.
Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ ΠΊ Π»ΡΠ±ΠΎΠΌΡ ΠΈΠ· ΡΠ΅Π»ΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ², Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎ Π²Π΅Π»ΠΈΡΠΈΠ½Π΅ Π΄Π»Ρ Π΅Π³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ. Π’ΠΎ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· int ΠΈ long ΡΡΠ΅Π±ΡΠ΅ΡΡΡ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌ. ΠΡΠΎΠ±ΡΠ°Π·ΡΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ, Π½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ ΠΎΠ½Π° Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΡΠΏΡΠΈΠ·ΠΎΠ² Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΠΊΡΠΎ Π·Π½Π°Π΅Ρ ΡΡΡΡΠΊΡΡΡΡ Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΠΈ Π² ΠΌΠ°ΡΠΈΠ½Π΅. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ Π±ΡΠ»ΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π² #2.6.
ΠΠ±ΡΠ΅ΠΊΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ Π² ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. ΠΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΠ΅Π³Π΄Π° ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π»ΠΎΠ΅, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ ΠΈΠ· ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² ΡΠΎΡ ΠΆΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, Π½ΠΎ Π² ΠΎΡΠ°Π»ΡΠ½ΡΡ ΡΠ»ΡΡΠ°ΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ.
Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΏ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ Π² ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΠΈΠΏ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΠΈ, Π΅ΡΠ»ΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠΎΠΎΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²ΡΡΠ°Π²Π½Π΅Π½Π½ΡΠΉ Π² ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ°ΡΠ°Π½ΡΠΈΡΡΠ΅ΡΡΡ, ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ Π² ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π Π°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ ΠΌΠΎΠ³ΡΡ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ ΠΏΠΎ ΡΠΈΡΠ»Ρ Π±ΠΈΡ Π² ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡ ΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ ΠΊ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². Π‘ΠΎΡΡΠ°Π²Π½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π²ΡΠ°Π²Π½ΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎ ΡΠ°ΠΌΠΎΠΉ ΡΡΡΠΎΠ³ΠΎΠΉ Π³ΡΠ°Π½ΠΈΡΠ΅, ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠΉ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΈΠ· Π΅Π³ΠΎ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ .
ΠΠ±ΡΠ΅ΠΊΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡΡΡ Π² ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ Π±ΡΠ» ΠΎΠΏΠΈΡΠ°Π½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΈΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΡΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ (#8.5.6).
ΠΠ±ΡΠ΅ΠΊΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡΡΡ Π² ΡΡΡΠ»ΠΎΡΠ½ΡΠΉ ΡΠΈΠΏ amp;X, Π΅ΡΠ»ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡΡΡ Π² X*.
7.2.4 Π‘Π²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ ΠΠ°ΠΌΡΡΡ
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ new ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° ΠΈΠΌΡ_ΡΠΈΠΏΠ° (ΡΠΌ. #8.7), ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΎΠ½ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½. ΠΡΠ΅ΠΌΡ ΠΆΠΈΠ·Π½ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ ΠΏΠΌΠΎΡΡΡ new, Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ ΠΎΠ±Π»Π°ΡΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ½ ΡΠΎΠ·Π΄Π°Π½. ΠΠΏΠ΅ΡΠ°ΡΠΈΡ new Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π΅ΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ. ΠΠΎΠ³Π΄Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΡΠΊΠ°Π·Π΅ΡΠ»Ρ Π½Π° Π΅Π³ΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈ new int ΠΈ new int[10] Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ int*. ΠΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π½Π°Π΄ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ°Π²Π»ΡΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡ (#8.6.2). ΠΠΏΠ΅ΡΠ°ΡΠΈΡ new (#7.2) Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ
void* operator new (long);
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ Π·Π°Π΄Π°Π΅Ρ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π°ΠΉΡΠΎΠ². ΠΠ°ΠΌΡΡΡ Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π°. ΠΡΠ»ΠΈ operator new() Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΉΡΠΈ ΡΡΠ΅Π±ΡΠΌΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠΎ ΠΎΠ½Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π½ΠΎΠ»Ρ.
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ delete ΡΠ½ΠΈΡΡΠΎΠΆΠ°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ new. ΠΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ void. ΠΠΏΠ΅ΡΠ°Π½Π΄ delete Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΠΌ new. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ delete ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π±ΡΠ» ΠΏΠΎΠ»ΡΡΠ΅Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ new. ΠΠ½Π°ΠΊΠΎ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ delete ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ»Ρ Π±Π΅Π·Π²ΡΠ΅Π΄Π½ΠΎ.
Π§ΡΠΎΠ±Ρ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΏΠ°ΠΌΡΡΡ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ delete Π²ΡΠ·Π²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ
void operator delete (void*);
Π ΡΠΎΡΠΌΠ΅
delete [ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ] Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
Π²ΡΠΎΡΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π²Π΅ΠΊΡΠΎΡ, Π° ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Π΅Ρ ΡΠΈΡΠ»ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠΎΠ³ΠΎ Π²Π΅ΠΊΡΠΎΡΠ°. ΠΠ°Π΄Π°Π½ΠΈΠ΅ ΡΠΈΡΠ»Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΡΠΌ Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅Π² ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΡ Π²Π΅ΠΊΡΡΠΎΠ² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΡΠΌ. #8.5.8.
7.3 ΠΡΠ»ΡΡΠΈΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠ²Π½ΡΠ΅ ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ
ΠΡΠ»ΡΡΠΈΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠ²Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ *, / ΠΈ % Π³ΡΡΠΏΠΏΠΈΡΡΡΡ ΡΠ»Π΅Π²Π° Π½Π°ΠΏΡΠ°Π²ΠΎ. ΠΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠ΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ.
ΠΌΡΠ»ΡΡΠΈΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠ²Π½ΠΎΠ΅_Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅: Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ * Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ / Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ % Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΠΠΈΠ½Π°ΡΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ * ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΏΠ΅ΡΠ°ΡΠΈΡ * Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½Π° ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ. ΠΠΈΠ½Π°ΡΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ / ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π΄Π΅Π»Π΅Π½ΠΈΠ΅. ΠΡΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅Π»ΡΡ ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π² ΡΡΠΎΡΠΎΠ½Ρ 0, Π½ΠΎ Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΈΠ· ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΎΠ² ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»Π΅Π½, ΡΠΎ ΡΠΎΡΠΌΠ° ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ. ΠΠ° Π²ΡΠ΅Ρ ΠΌΠ°ΡΠΈΠ½Π°Ρ , ΠΎΡ Π²Π°ΡΡΠ²Π°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ, ΠΎΡΡΠ°ΡΠΎΠΊ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡ ΠΆΠ΅ Π·Π½Π°ΠΊ, ΡΡΠΎ ΠΈ Π΄Π΅Π»ΠΌΠΎΠ΅. ΠΡΠ΅Π³Π΄Π° ΠΈΡΡΠΈΠΈΠ½Π½ΠΎ, ΡΡΠΎ (a/b)*b + a%b ΡΠ°Π²Π½ΠΎ a (Π΅ΡΠ»ΠΈ b Π½Π΅ 0).