Π Π°Π·ΡΠΌΠ΅Π΅ΡΡΡ, Π·Π° ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠ±Π»Π°Π³ΠΎΠ΄Π°ΡΠΈΡΡ ΠΡΡΡΠ° ΠΡΡΠ΅ΡΠ½Π°. ΠΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·ΡΠ΅ΡΠΈΠ» Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ°ΡΡΡ Π² ΠΊΠ½ΠΈΠ³Ρ, Π½ΠΎ ΠΈ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π» Π΅Π΅, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° ΡΡΠ°Π»Π° Π΅ΡΠ΅ Π»ΡΡΡΠ΅ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π°.
ΠΠ·Π΄Π°Π½ΠΈΡ Ρ ΠΎΡΠΎΡΠ΅ΠΉ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ°. ΠΠΎΠ΅ΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΏΠΎΠ²Π΅Π·Π»ΠΎ β Π΅Π΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅Π»Π° ΡΠ΅Π»Π°Ρ Π³ΡΡΠΏΠΏΠ° Π²ΡΠ΄Π°ΡΡΠΈΡ ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ². ΠΡΠ°ΠΉΠ°Π½ ΠΠ΅ΡΠ½ΠΈΠ³Π°Π½ (Brian Kerninghan) ΠΈ ΠΠ»ΠΈΡΡ ΠΡΠΈΠ½ (Cliff Green) ΠΏΡΠΎΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π»ΠΈ ΡΠ°Π½Π½ΠΈΠ΅ Π½Π°Π±ΡΠΎΡΠΊΠΈ, Π° ΠΏΠΎΠ»Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈ ΠΡΠ³ Π₯Π°ΡΡΠΈΡΠΎΠ½, ΠΡΠ°ΠΉΠ°Π½ ΠΠ΅ΡΠ½ΠΈΠ³Π°Π½, Π’ΠΈΠΌ ΠΠΆΠΎΠ½ΡΠΎΠ½ (Tim Johnson), Π€ΡΡΠ½ΡΠΈΡ ΠΠ»Π°ΡΡΠ±ΠΎΡΠΎ (Francis Glassborough), ΠΠ½Π΄ΡΠ΅ΠΉ ΠΠ»Π΅ΠΊΡΠ°Π½Π΄ΡΠ΅ΡΠΊΡ, ΠΡΠ²ΠΈΠ΄ Π‘ΠΌΠΎΠ»Π»Π±Π΅ΡΠ³, ΠΠ°ΡΠΎΠ½ ΠΡΠΌΠΏΠ±Π΅Π» (Aaron Campbell), ΠΠΆΠ°ΡΠ΅Π΄ ΠΡΠ½Π½ΠΈΠ½Π³ (Jared Manning), Π₯Π΅ΡΠ± Π‘Π°ΡΡΠ΅Ρ, Π‘ΡΠΈΠ²Π΅Π½ ΠΡΡ-Ρ Π΅ΡΡΡ (Stephen Dewhurst), ΠΡΡΡ ΠΡΡΠ΅ΡΠ½, ΠΠΈΠ»Π»ΠΌΠ΅Ρ ΠΠ΅ΡΠ΄ΠΆ (Gillmer Derge), ΠΠ°ΡΠΎΠ½ ΠΡΡ (Aaron Moore), Π’ΠΎΠΌΠ°Ρ ΠΠ΅ΠΊΠ΅Ρ (Thomas Becker), ΠΠΈΠΊΡΠΎΡ ΠΠΎΠ½ (Victor Von) ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΠ°ΡΠΊ Π ΠΎΠ΄ΠΆΠ΅ΡΡ. Π Π΅Π΄Π°ΠΊΡΡΡΠ° Π±ΡΠ»Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° ΠΠ°ΡΡΠΈΠ½ΠΎΠΉ ΠΠ²Π΅ΡΠΈ (Katrina Avery).
Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΡΠ΅Π½Ρ ΡΡΡΠ΄Π½ΠΎ Π½Π°ΠΉΡΠΈ Ρ ΠΎΡΠΎΡΠ΅Π³ΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°. Π― Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ ΠΠΆΠΎΠ½Ρ ΠΠΎΡΡΠ΅ΡΡ Π·Π° ΡΠΎ, ΡΡΠΎ ΠΎΠ½ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ» ΠΌΠ΅Π½Ρ Ρ ΠΠΆΠ°ΡΠ΅Π΄ΠΎΠΌ ΠΡΠ½Π½ΠΈΠ½Π³ΠΎΠΌ ΠΈ ΠΠ°ΡΠΎΠ½ΠΎΠΌ ΠΡΠΌΠΏΠ±Π΅Π»Π»ΠΎΠΌ.
Π₯Π΅ΡΠ± Π‘Π°ΡΡΠ΅Ρ Π»ΡΠ±Π΅Π·Π½ΠΎ ΡΠΎΠ³Π»Π°ΡΠΈΠ»ΡΡ ΠΏΠΎΠΌΠΎΡΡ ΠΌΠ½Π΅ ΠΎΡΠΊΠΎΠΌΠΏΠΈΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ STL Π² Π±Π΅ΡΠ°-Π²Π΅ΡΡΠΈΠΈ Microsoft Visual Studio .NET, Π° ΠΠ΅ΠΎΡ ΠΠΎΠ»ΠΌΠ°Π½ (Leor Zolman) Π²Π·ΡΠ» Π½Π° ΡΠ΅Π±Ρ Π³Π΅ΡΠΊΡΠ»Π΅ΡΠΎΠ² ΡΡΡΠ΄ ΠΏΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π² ΠΊΠ½ΠΈΠ³Π΅. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π²ΡΠ΅ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π° ΠΌΠΎΠ΅ΠΉ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ.
ΠΠ½ΠΆΠ΅Π»ΠΈΠΊΠ° ΠΠ°Π½Π³Π΅Ρ ΠΎΡΠΊΡΡΠ»Π° ΠΌΠ½Π΅ Π³Π»Π°Π·Π° Π½Π° Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π°ΡΠΏΠ΅ΠΊΡΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ STL. Π ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ ΠΌΠ΅Π½ΡΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ, ΡΠ΅ΠΌ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ, Π½ΠΎ, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, Π²ΡΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Ρ Π±ΠΎΠ»ΡΡΠΎΠΉ Π΄ΠΎΠ»Π΅ΠΉ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠΈ ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΠΈΡΡΠΈΠ½Π½ΡΠΌ ΠΈ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ. ΠΠΎ Π²ΡΡΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Ρ Π½Π° ΡΡΠΎ Π½Π°Π΄Π΅ΡΡΡ.
ΠΠ΅ΡΠ°ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ Π½Π°ΡΡΠΎΡΡΠ΅ΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π»ΡΡΡΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ , ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ β ΠΠΆΠΎΠ½ Π£ΡΠ±Π± (John Webb), ΠΠ°ΠΉΠΊΠ» Π₯ΠΎΠΊΠΈΠ½Ρ (Michael Hawkins), ΠΠ΅ΡΠ΅ΠΊ ΠΡΠ°ΠΉΡ (Derek Price) ΠΈ ΠΠΆΠΈΠΌ Π¨Π΅Π»Π»Π΅Ρ (Jim Scheller) β ΡΠΊΠ°Π·Π°Π»ΠΈ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ. Π― Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ ΠΈΠΌ Π·Π° ΠΏΠΎΠΌΠΎΡΡ ΠΏΠΎ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Β«Effective STLΒ».
Π‘ΡΠ΅Π΄ΠΈ ΠΌΠΎΠΈΡ ΠΊΠΎΠ»Π»Π΅Π³ Π² ΠΈΠ·Π΄Π°ΡΠ΅Π»ΡΡΡΠ²Π΅ Addison-Wesley Π±ΡΠ»ΠΈ ΠΠΆΠΎΠ½ Π£ΡΠΉΡ Qohn Wait), ΡΠ΅Π΄Π°ΠΊΡΠΎΡ, Π° Π½ΡΠ½Π΅ Π²ΠΈΡΠ΅-ΠΏΡΠ΅Π·ΠΈΠ΄Π΅Π½Ρ, Π΅Π³ΠΎ Π·Π°ΠΌΠ΅ΡΡΠΈΡΠ΅Π»ΠΈ ΠΠ»ΠΈΡΠΈΡ ΠΡΡΠΈ (Alicia Carey) ΠΈ Π‘ΡΠ·Π°Π½Π½Π° ΠΡΠ·Π°ΡΠ΄ (Susannah Buzard), ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΠΆΠΎΠ½ Π€ΡΠ»Π»Π΅Ρ (John Fuller), Ρ ΡΠ΄ΠΎΠΆΠ½ΠΈΠΊ ΠΠ°ΡΠΈΠ½ Π₯Π°Π½ΡΠ΅Π½ (Karin Hansen), ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π³ΡΡΡ ΠΠΆΠ΅ΠΉΡΠΎΠ½ ΠΠΆΠΎΠ½Ρ (Jason Jones), ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Ρ ΠΎΡΠΎΡΠΎ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΠΈΠΉΡΡ Π² ΠΏΡΠΎΠ΄ΡΠΊΡΠ°Ρ Adobe, ΠΈΡ Π½Π°ΡΠ°Π»ΡΠ½ΠΈΠΊ ΠΠ°ΡΡΠΈ Π Π°Π±ΠΈΠ½ΠΎΠ²ΠΈΡ (Marty Rabinowitz), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΡΡΡ ΠΠΆΠΎΠ½ΡΠΎΠ½ (Curt Johnson), Π§Π°Π½Π΄Π° ΠΠΈΡΠΈ-ΠΡΡΡ (Chanda Leary-Coutu) ΠΈ Π ΠΎΠ±ΠΈΠ½ ΠΡΡΡ (Robin Bruce) β ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΡ ΠΏΠΎ ΠΌΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³Ρ, Π½ΠΎ Π²ΠΏΠΎΠ»Π½Π΅ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠ΅ Π»ΡΠ΄ΠΈ.
ΠΠ±Π±ΠΈ Π‘ΡΠ΅ΠΉΠ»ΠΈ (Abby Staley) ΡΠ΄Π΅Π»Π°Π»Π° ΠΌΠΎΠΈ Π²ΠΎΡΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΎΠ±Π΅Π΄Ρ ΠΏΡΠΈΠ²ΡΡΠ½ΡΠΌ, Π½ΠΎ ΠΏΡΠΈΡΡΠ½ΡΠΌ Π΄Π΅Π»ΠΎΠΌ.
ΠΠ°ΠΊ ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌΠΈ ΡΠ΅ΡΡΡΡ ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ ΠΈ ΠΎΠ΄Π½ΠΈΠΌ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ-Π΄ΠΈΡΠΊΠΎΠΌ, ΠΌΠΎΡ ΠΆΠ΅Π½Π° ΠΡΠ½ΡΠΈ ΡΠ΅ΡΠΏΠ΅Π»ΠΈΠ²ΠΎ ΡΠ½ΠΎΡΠΈΠ»Π° ΠΌΠΎΡ Ρ ΡΠΎΠ½ΠΈΡΠ΅ΡΠΊΡΡ Π·Π°Π½ΡΡΠΎΡΡΡ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π»Π° ΡΠ²ΠΎΡ ΠΏΠΎΠΌΠΎΡΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Ρ Π² Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ΄Π°Π»ΡΡ. ΠΠ½Π° ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π»Π° ΠΌΠ½Π΅, ΡΡΠΎ Π² ΠΆΠΈΠ·Π½ΠΈ Π΅ΡΡΡ Π²Π΅ΡΠΈ ΠΏΠΎΠ»ΡΡΡΠ΅ C++ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ.
ΠΡΡΠ°Π΅ΡΡΡ ΡΠΏΠΎΠΌΡΠ½ΡΡΡ Π½Π°ΡΡ ΡΠΎΠ±Π°ΠΊΡ ΠΠ΅ΡΡΠ΅ΡΠΎΠ½Ρ. Π Π΄Π΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° Ρ ΠΏΠΈΡΡ ΡΡΠΈ ΡΡΡΠΎΠΊΠΈ, Π΅ΠΉ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ΅ΡΡΡ Π»Π΅Ρ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ Ρ ΠΡΠ½ΡΠΈ ΠΈ ΠΠ΅ΡΡΠ΅ΡΠΎΠ½ΠΎΠΉ ΠΎΡΠΏΡΠ°Π²ΠΈΠΌΡΡ Π² Β«ΠΠ°ΡΠΊΠΈΠ½-Π ΠΎΠ±Π±ΠΈΠ½ΡΒ». ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, ΠΠ΅ΡΡΠ΅ΡΠΎΠ½Π΅ Π΄ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°ΡΠΈΠΊ Π²Π°Π½ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΡΠΎΠΆΠ΅Π½ΠΎΠ³ΠΎ Π² Π²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΌ ΡΡΠ°ΠΊΠ°Π½ΡΠΈΠΊΠ΅.
ΠΡ ΠΈΠ·Π΄Π°ΡΠ΅Π»ΡΡΡΠ²Π°
ΠΠ°ΡΠΈ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΡ, ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²ΠΎΠΏΡΠΎΡΡ, ΠΊΠ°ΡΠ°ΡΡΠΈΠ΅ΡΡ ΡΡΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΡ ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΎΡΠΏΡΠ°Π²Π»ΡΠΉΡΠ΅ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ [email protected] (ΠΈΠ·Π΄Π°ΡΠ΅Π»ΡΡΡΠ²ΠΎ Β«ΠΠΈΡΠ΅ΡΒ», ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½Π°Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡ).
ΠΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ°Π΄Ρ ΡΠ·Π½Π°ΡΡ Π²Π°ΡΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅!
ΠΠ° web-ΡΠ°ΠΉΡΠ΅ ΠΈΠ·Π΄Π°ΡΠ΅Π»ΡΡΡΠ²Π° http://www.piter.com Π²Ρ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½Π°ΡΠΈΡ ΠΊΠ½ΠΈΠ³Π°ΠΊ.
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΡ ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ STL. ΠΡ ΡΠΌΠ΅Π΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ, ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅, Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ β ΡΠ°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ find ΠΈ sort. ΠΠΎ Π²Ρ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ΄Π΅Π»Π°ΡΡΡΡ ΠΎΡ Π²ΠΏΠ΅ΡΠ°ΡΠ»Π΅Π½ΠΈΡ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π»ΠΈΡΡ ΠΌΠ°Π»ΡΡ ΡΠ°ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ STL. ΠΠ°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΡΠΎΡΡΠΎ, ΡΠ΅ΡΠ°ΡΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎ; ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΡΠΎΡΡΠΎ ΠΈ ΠΏΡΡΠΌΠΎΠ»ΠΈΠ½Π΅ΠΉΠ½ΠΎ, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ ΡΡΠ΅ΡΠΊΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈΠ»ΠΈ Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ Π½Π΅ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎ. ΠΡΠΎΡΠ΅Π΄ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ, ΠΏΠΎΠ³Π»ΠΎΡΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ΅ΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ. ΠΠ°, Π²Ρ ΡΠΌΠ΅Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ STL, Π½ΠΎ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½Ρ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ.
Π― Π½Π°ΠΏΠΈΡΠ°Π» ΡΡΡ ΠΊΠ½ΠΈΠ³Ρ Π΄Π»Ρ Π²Π°Ρ.
Π Π½Π΅ΠΉ Ρ ΠΏΠΎΠΊΠ°ΠΆΡ, ΠΊΠ°ΠΊ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ STL Ρ ΡΠ΅ΠΌ, ΡΡΠΎΠ±Ρ Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΡ Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΏΡΠΎΡΡΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΡΡΡΡ Π·Π°Π΄Π°Ρ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π³Π°Π½ΡΠ½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΉ. Π ΠΊΠ½ΠΈΠ³Π΅ ΠΎΠΏΠΈΡΠ°Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ STL ΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΡ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π»ΠΈΠΊΠ²ΠΈΠ΄ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ΅ΡΠΊΡ ΡΠ΅ΡΡΡΡΠΎΠ², ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π½Π΅ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. Π Π°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠΈΠ΅ΠΌΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π·Π°ΡΡΠ°Π²ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ STL ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±ΡΡΡΡΠΎ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈ Π±ΡΠ»ΠΎ Π·Π°Π΄ΡΠΌΠ°Π½ΠΎ ΠΏΡΠΈ Π΅Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ.
ΠΡΠΎΡΠΈΡΠ°Π² ΡΡΡ ΠΊΠ½ΠΈΠ³Ρ, Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ Π»ΡΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ Π² STL. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ°Π½Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠ²Π½ΡΠΌ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΌ Π·Π°Π½ΡΡΠΈΠ΅ΠΌ. Π Π°Π±ΠΎΡΠ°ΡΡ Ρ STL ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, Π½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ β Π·Π°Π½ΡΡΠΈΠ΅ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ Π·Π°Ρ Π²Π°ΡΡΠ²Π°ΡΡΠ΅Π΅, ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΎΡΠ²Π°ΡΡΡΡ. ΠΠ°ΠΆΠ΅ ΠΏΡΠΈ Π±Π΅Π³Π»ΠΎΠΌ Π²Π·Π³Π»ΡΠ΄Π΅ Π½Π° STL ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΡΠ½ΠΎ, ΡΡΠΎ ΡΡΠΎ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, Π½ΠΎ Π΅Π΅ Π΄ΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π° Π³ΠΎΡΠ°Π·Π΄ΠΎ ΡΠΈΡΠ΅ ΠΈ Π³Π»ΡΠ±ΠΆΠ΅, ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π±Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ. Π― Π·Π°Π½ΠΈΠΌΠ°ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠΊΠΎΠ»ΠΎ 30 Π»Π΅Ρ, Π½ΠΎ Ρ Π΅ΡΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΡΡΡΠ΅ΡΠ°Π» Π½ΠΈΡΠ΅Π³ΠΎ ΠΏΠΎΡ ΠΎΠΆΠ΅Π³ΠΎ Π½Π° STL.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ STL
Π£ STL Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ, ΠΈ ΡΠ°Π·Π½ΡΠ΅ Π°Π²ΡΠΎΡΡ Π²ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ Π² ΡΡΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½ ΡΠ°Π·Π½ΡΠΉ ΡΠΌΡΡΠ». Π ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΡΠ΅ΡΠΌΠΈΠ½ Β«STLΒ» ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ C++, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌ Ρ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ. Π ΡΡΠΎΠΉ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ (Π²ΠΊΠ»ΡΡΠ°Ρ string), ΡΠ°ΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΏΠΎΡΠΎΠΊΠΎΠ² Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ. Π Π½Π΅Π΅ Π½Π΅ Π²Ρ ΠΎΠ΄ΡΡ Π°Π΄Π°ΠΏΡΠ΅ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² (stack, queue ΠΈ priorityqueue), ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ bitset ΠΈ valarray, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠ΅ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ. Π₯ΠΎΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΡ Π² ΡΠΎΡΠΌΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ, ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΡΡΡΡ ΡΠ·ΡΠΊΠ° C++, Π° Π½Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
Π‘ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π² ΠΌΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ STL Π½Π΅ Π²Ρ ΠΎΠ΄ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ C++, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Ρ ΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ, ΠΎΠ΄Π½ΠΎΡΠ²ΡΠ·Π½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ, ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ rope ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΡΠΎ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ STL ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΈΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ ΡΠΏΠΎΠΌΠΈΠ½Π°Ρ ΠΎ Π½ΠΈΡ ΡΠ°ΠΌ, Π³Π΄Π΅ ΡΡΠΎ ΡΠΌΠ΅ΡΡΠ½ΠΎ. Π ΡΠΎΠ²Π΅ΡΠ΅ 25 ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΎΠ±Π·ΠΎΡ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ Ρ ΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ². Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΡΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Π½Π΅ Π²Ρ ΠΎΠ΄ΡΡ Π² STL, Π½ΠΎ ΠΈΡ Π°Π½Π°Π»ΠΎΠ³ΠΈ ΠΏΠΎΡΡΠΈ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° Π±ΡΠ΄ΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π² ΡΠ»Π΅Π΄ΡΡΡΡΡ Π²Π΅ΡΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ C++.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π±ΡΠ»Π° Π·Π°Π»ΠΎΠΆΠ΅Π½Π° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ STL Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ STL, Π° Π½Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½ΠΎΠ²ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². Π’Π°ΠΊ, Π² ΠΊΠ½ΠΈΠ³Π΅ ΠΏΠΎΡΡΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ², ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² ΠΈ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠΎΠ². ΠΠ° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄, ΡΠ½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π² ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²Π΅ ΠΎΡΠ²ΠΎΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ STL. ΠΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ ΠΈ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° Π΄Π°Π½Π½Π°Ρ ΠΊΠ½ΠΈΠ³Π°. ΠΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΡΠ΅ Π·Π°Π½ΡΡΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ STL-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΉΡΠΈ Π² ΠΊΠ½ΠΈΠ³Π°Ρ ΠΠΆΠΎΡΠ°ΡΡΠΈΡΠ° Β«The C++ Standard LibraryΒ» [3] ΠΈ ΠΡΡΠ΅ΡΠ½Π° Β«Generic Programming and the STLΒ» [4]. Π ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π΅ΡΡΡ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ Π°ΡΠΏΠ΅ΠΊΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ STL β Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ STL Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ Π² ΠΊΠ½ΠΈΠ³Π΅ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° Π²ΡΡ Π³Π»Π°Π²Π° 6.
Π‘ΡΡΠ»ΠΊΠΈ
Π‘ΡΡΠ»ΠΊΠΈ Π½Π° ΠΊΠ½ΠΈΠ³ΠΈ ΠΠΆΠΎΡΠ°ΡΡΠΈΡΠ° ΠΈ ΠΡΡΠ΅ΡΠ½Π° Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ Π°Π±Π·Π°ΡΠ΅ Π΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π² ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΎΡΠΎΡΠΌΠ»ΡΡΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΡΠ»ΠΊΠΈ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Ρ ΡΡΠ°ΡΠ°ΡΡΡ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² ΡΡΡΠ»ΠΊΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ Π΅Π΅ ΡΠ·Π½Π°Π»ΠΈ Π»ΡΠ΄ΠΈ, ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡΠ΅ Ρ ΡΡΠΈΠΌ ΡΡΡΠ΄ΠΎΠΌ. ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ ΡΠΈΡΠ°Π»ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ ΡΡΠΈΡ Π°Π²ΡΠΎΡΠΎΠ², Π²Π°ΠΌ Π½Π΅ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΠ°Π·Π΄Π΅Π»Ρ Β«ΠΠΈΡΠ΅ΡΠ°ΡΡΡΠ°Β» ΠΈ Π²ΡΡΡΠ½ΡΡΡ, ΡΡΠΎ ΡΠΊΡΡΠ²Π°Π΅ΡΡΡ Π·Π° ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ [3] ΠΈ [4]. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π² ΡΠΏΠΈΡΠΊΠ΅ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΏΠΎΠ»Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
Π’ΡΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΏΠΎΠΌΠΈΠ½Π°ΡΡΡΡ ΡΠ°ΠΊ ΡΠ°ΡΡΠΎ, ΡΡΠΎ Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠ»ΠΊΠΈ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ. ΠΠ΅ΡΠ²Π°Ρ ΠΈΠ· Π½ΠΈΡ , ΠΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΡΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ C++ [5], Π² ΠΊΠ½ΠΈΠ³Π΅ ΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠΎ Β«Π‘ΡΠ°Π½Π΄Π°ΡΡΠΎΠΌΒ». ΠΠ²Π΅ Π΄ΡΡΠ³ΠΈΠ΅ β ΠΌΠΎΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎ C++, Β«Effective C++Β» [1] ΠΈ Β«More Effective C++Β» [2].
STL ΠΈ Π‘ΡΠ°Π½Π΄Π°ΡΡΡ
Π ΠΊΠ½ΠΈΠ³Π΅ Ρ ΡΠ°ΡΡΠΎ ΡΡΡΠ»Π°ΡΡΡ Π½Π° Π‘ΡΠ°Π½Π΄Π°ΡΡ C++, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΠΉ, ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ C++. Π’Π΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π² ΠΊΠ½ΠΈΠ³Π΅, Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡ C++. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ. ΠΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ Π½Π΅Π΄ΠΎΡΠ°Π±ΠΎΡΠΎΠΊ Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°Ρ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡ STL Π΄Π°ΠΆΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΠΈΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π΅ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ. Π ΡΠ°ΠΌΡΡ ΡΠΈΠΏΠΈΡΠ½ΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΡΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡΡΡ ΠΎΠ±Ρ ΠΎΠ΄Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠ½ΠΎΠ³Π΄Π° ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ Π²ΡΡ ΠΎΠ΄ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π½Π° Π΄ΡΡΠ³ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ STL (ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π). Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ STL, ΡΠ΅ΠΌ Π²Π°ΠΆΠ½Π΅Π΅ ΠΎΡΠ»ΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠΎΠ³Π΄Π° Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠ΅ΠΉ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΎΠ½ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΠΈΠ½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ STL ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅, Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ Ρ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌΠΈ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠ½ΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΊΠ°ΠΊ ΠΎΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, ΡΠ°ΠΊ ΠΈ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ΅ΡΠΌΠΈΠ½ Β«ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° STLΒ», ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ STL. ΠΡΠ»ΠΈ Π² ΠΊΠ½ΠΈΠ³Π΅ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, Π·Π½Π°ΡΠΈΡ, Π²ΠΈΠ½ΠΎΠ²Π°Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ. ΠΠΎ Π΅ΡΠ»ΠΈ ΡΠ΅ΡΡ ΠΈΠ΄Π΅Ρ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ STL, ΡΡΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΠ°ΠΊ: Β«Π²ΠΈΠ½ΠΎΠ²Π°Ρ ΡΠΎ Π»ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ, ΡΠΎ Π»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, Π° ΠΌΠΎΠΆΠ΅Ρ, ΠΈ ΡΠΎ ΠΈ Π΄ΡΡΠ³ΠΎΠ΅Β».