Π Π°Π±ΠΎΡ‚Π° с Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ структурами Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Π±Π΅Π· понимания ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² формирования ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’Π°Π±Π»ΠΈΡ†Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых вострСбованных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ хранСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ… Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ подсистСму. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ добавлСния Π½ΠΎΠ²ΠΎΠΉ строки каТСтся Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с нюансами Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ с этим ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкам выполнСния ΠΈΠ»ΠΈ сущСствСнному замСдлСнию Ρ€Π°Π±ΠΎΡ‚Ρ‹ слоТной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ всС доступныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ манипуляции строками, рассмотрим различия ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ сцСнарии использования для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ситуации. Π’Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ Π½Π΅ просто ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, Π° Π΄Π΅Π»Π°Ρ‚ΡŒ это эффСктивно.

ΠžΡΠ½ΠΎΠ²Ρ‹ создания ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

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

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

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с прСдустановлСнными ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ. Π—Π΄Π΅ΡΡŒ Π²Π°ΠΆΠ½ΠΎ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ синтаксис описания Ρ‚ΠΈΠΏΠΎΠ², особСнно Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ составныС Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π’Π— = Новый Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ("НомСнклатура, Π‘ΡƒΠΌΠΌΠ°, ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ");

Π’Π—.Колонки.НомСнклатура.Π’ΠΈΠΏ = Новый ОписаниСВипов("БправочникБсылка.НомСнклатура");

Π’Π—.Колонки.Π‘ΡƒΠΌΠΌΠ°.Π’ΠΈΠΏ = Новый ОписаниСВипов("Число", , Новый ΠšΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹Π§ΠΈΡΠ»Π°(15, 2));

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ "Π‘ΡƒΠΌΠΌΠ°" строковоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ систСма Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ, защищая Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ этого этапа часто ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ скрытым Π±Π°Π³Π°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² внСшниС систСмы.

πŸ’‘

ВсСгда явно Π·Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ ΠΏΡ€ΠΈ создании Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ ускорит Ρ€Π°Π±ΠΎΡ‚Ρƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ ошибки прСобразования Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….

ΠœΠ΅Ρ‚ΠΎΠ΄ Add: стандартноС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½Π΅Ρ†

Π‘Π°ΠΌΡ‹ΠΉ распространСнный способ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ β€” использованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() (ΠΈΠ»ΠΈ Add() Π² английской вСрсии). Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ создаСт Π½ΠΎΠ²ΡƒΡŽ строку Π² самом ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ссылку Π½Π° Π½Π΅Π΅, позволяя сразу ΠΆΠ΅ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ячСйки Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

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

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΈΠ»ΠΈ сразу ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ значСния полям Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ. Π’Π°ΠΊΠΎΠΉ ΡΡ‚ΠΈΠ»ΡŒ ΠΊΠΎΠ΄Π° считаСтся Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ Ρ‚ΠΎΠ½ΠΎΠΌ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΠΎΠ΄ 1Π‘.

НоваяБтрока = Π’Π—.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

НоваяБтрока.НомСнклатура = БсылкаНаВовар;

НоваяБтрока.Π‘ΡƒΠΌΠΌΠ° = 1000;

НоваяБтрока.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 5;

Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с большими массивами Π΄Π°Π½Π½Ρ‹Ρ…, ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ количСство ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ свойствам строки Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ². Π›ΡƒΡ‡ΡˆΠ΅ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠ΄Π½ΠΈΠΌ Π±Π»ΠΎΠΊΠΎΠΌ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΈΡ… Π½ΠΎΠ²ΠΎΠΉ строкС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

β˜‘οΈ Алгоритм добавлСния строки

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ΠœΠ΅Ρ‚ΠΎΠ΄ Insert: вставка строки ΠΏΠΎ индСксу

Π’ ситуациях, ΠΊΠΎΠ³Π΄Π° критичСски Π²Π°ΠΆΠ΅Π½ порядок слСдования записСй, стандартного добавлСния Π² ΠΊΠΎΠ½Π΅Ρ† ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСдостаточно. ΠœΠ΅Ρ‚ΠΎΠ΄ Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ() (ΠΈΠ»ΠΈ Insert()) позволяСт Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ строку Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, сдвигая ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ записи Π²Π½ΠΈΠ·.

Π˜Π½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡ Π² 1Π‘ начинаСтся с нуля. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ вставка ΠΏΠΎ индСксу 0 помСстит запись Π² самоС Π½Π°Ρ‡Π°Π»ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ИспользованиС этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ большСй остороТности, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ сдвиг массива Π΄Π°Π½Π½Ρ‹Ρ… Π² памяти являСтся Π±ΠΎΠ»Π΅Π΅ рСсурсоСмкой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ, Ρ‡Π΅ΠΌ простоС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅.

Частой ошибкой являСтся Π²Ρ‹Ρ…ΠΎΠ΄ Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° индСксов. Если Π²Ρ‹ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ строку ΠΏΠΎ индСксу, ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰Π΅ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ количСство строк, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° выдаст ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅. ВсСгда провСряйтС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄ вставкой.

Π˜Π½Π΄Π΅ΠΊΡΠ’ΡΡ‚Π°Π²ΠΊΠΈ = 0;

Если Π˜Π½Π΄Π΅ΠΊΡΠ’ΡΡ‚Π°Π²ΠΊΠΈ <= Π’Π—.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() Π’ΠΎΠ³Π΄Π°

Π‘Ρ‚Ρ€ΠΎΠΊΠ° = Π’Π—.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ(Π˜Π½Π΄Π΅ΠΊΡΠ’ΡΡ‚Π°Π²ΠΊΠΈ);

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ = "ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Π°Ρ запись";

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌ ΠΏΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ², Π³Π΄Π΅ ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹Π΅ строки Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ строго Π²Π²Π΅Ρ€Ρ…Ρƒ ΠΈΠ»ΠΈ Π²Π½ΠΈΠ·Ρƒ, Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² сортировки "Π½Π° Π»Π΅Ρ‚Ρƒ" Π±Π΅Π· использования встроСнных срСдств сортировки.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Insert ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ Add?

ΠœΠ΅Ρ‚ΠΎΠ΄ Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ сдвига всСх ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… элСмСнтов массива Π² памяти. ΠŸΡ€ΠΈ частом использовании Π² Ρ†ΠΈΠΊΠ»Π΅ это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΡ‡Π½ΠΎΠΉ зависимости Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΎΡ‚ количСства записСй.

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строк ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ

Часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Π° Π½Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ строку с нуля, Π° ΠΏΡ€ΠΎΠ΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ запись с нСбольшими измСнСниями. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() с ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ исходной строки ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, Π»ΠΈΠ±ΠΎ явноС ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

ΠŸΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ссылочными ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π²Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Если Π² ячСйкС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ хранится ссылка Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΈΠ»ΠΈ справочник), Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ строки копируСтся сама ссылка, Π° Π½Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

ИзмСнСниС свойств ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎ ссылкС Π² Π½ΠΎΠ²ΠΎΠΉ строкС Π·Π°Ρ‚Ρ€ΠΎΠ½Π΅Ρ‚ ΠΈ исходныС Π΄Π°Π½Π½Ρ‹Π΅, Ссли ΠΎΠ½ΠΈ ΡΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ экзСмпляр. Π­Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½ΠΎ для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языков ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со слоТными структурами.

Рассмотрим Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ влияниС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π½Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΈ содСрТаниС Π΄Π°Π½Π½Ρ‹Ρ…:

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ строки Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ
Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() ΠšΠΎΠ½Π΅Ρ† Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Бсылка Π½Π° строку Высокая
Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ(ИндСкс) По ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ индСксу Бсылка Π½Π° строку БрСдняя (зависит ΠΎΡ‚ индСкса)
Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°) ΠšΠΎΠ½Π΅Ρ† Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Бсылка Π½Π° копию Высокая
Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ() МассовоС Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ НСт (void) Максимальная

ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ заслуТиваСт ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ упоминания. Он позволяСт Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· массива Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ, Ρ‡Ρ‚ΠΎ часто эффСктивнСС Ρ†ΠΈΠΊΠ»Π° с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ строк ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок ΠΈ валидация Ρ‚ΠΈΠΏΠΎΠ²

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ строго слСдит Π·Π° соотвСтствиСм Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… declared Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°Ρ… ΠΈ фактичСски записываСмых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π΅ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ выполнСния, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ.

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ записи пустых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (НСопрСдСлСно) Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ с ТСстким Ρ‚ΠΈΠΏΠΎΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Число) Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ допустимыС значСния ΠΈΠ»ΠΈ мСняйтС описаниС Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ.

Для динамичСского измСнСния структуры ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() ΡƒΠΆΠ΅ послС создания Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π½ΠΎ это считаСтся ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ Π² высоконагруТСнных систСмах, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ пСрСстройки Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ структуры Π΄Π°Π½Π½Ρ‹Ρ….

πŸ“Š Как Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго добавляСтС строки Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ?
Π§Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ» с ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ()
ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΈΠ· массива
Π’Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ для ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ²
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ массовом Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ

Когда Ρ€Π΅Ρ‡ΡŒ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΎ тысячах ΠΈ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°Ρ… записСй, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ лишний Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΈΠΏΠ° становится Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎΠΉ. ОсновноС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ β€” ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ количСство ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ².

ВмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π°, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ссылку Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΏΠ΅Ρ€Π΅Π΄ Ρ†ΠΈΠΊΠ»ΠΎΠΌ. Π­Ρ‚ΠΎ ускорит доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ, особСнно Π² старых вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π³Π΄Π΅ поиск ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π±Ρ‹Π» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΌΠ΅Π½Π΅Π΅ эффСктивно.

ΠšΠΎΠ»Π‘ΡƒΠΌΠΌΠ° = Π’Π—.Колонки["Π‘ΡƒΠΌΠΌΠ°"];

Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из ΠœΠ°ΡΡΠΈΠ²Π”Π°Π½Π½Ρ‹Ρ… Π¦ΠΈΠΊΠ»

НоваяБтрока = Π’Π—.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

НоваяБтрока[ΠšΠΎΠ»Π‘ΡƒΠΌΠΌΠ°] = Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.Π‘ΡƒΠΌΠΌΠ°;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Π’Π°ΠΊΠΆΠ΅ стоит ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ частого измСнСния структуры Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅/ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ) Π² процСссС наполнСния. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° создания Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π²Ρ‹Π²ΠΎΠ΄Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ возмоТности конструктора запросов ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. ВсСгда свСряйтС синтаксис с Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ справкой вашСй вСрсии.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы

МоТно Π»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ строку Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π±Π΅Π· указания Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ?

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

Π§Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚, Ссли Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Π² строкС Π½Π΅ совпадаСт с Ρ‚ΠΈΠΏΠΎΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ?

БистСма попытаСтся привСсти Ρ‚ΠΈΠΏ автоматичСски. Если ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, строка "ВСкст" Π² Ρ‡ΠΈΡΠ»ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ), Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π±Ρ€ΠΎΡˆΠ΅Π½ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅Π—Π½Π°Ρ‡Π΅Π½ΠΈΡ.

Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡƒΡŽ строку, Ссли ΠΎΠ½Π° большС Π½Π΅ Π½ΡƒΠΆΠ½Π°?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ() Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΏΠ΅Ρ€Π΅Π΄Π°Π² Π΅ΠΌΡƒ ссылку Π½Π° строку, Π»ΠΈΠ±ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() для удалСния всСх записСй сразу.

πŸ’‘

Для максимальной ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими объСмами Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ массивы ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ вмСсто построчного добавлСния Π² Ρ†ΠΈΠΊΠ»Π΅.