Tipuri de șiruri în Delphi (Delphi pentru începători)

La fel ca în orice limbaj de programare, în Delphi, variabilele sunt substituite utilizate pentru stocarea valorilor; au nume și tipuri de date. Tipul de date al unei variabile determină modul în care biții reprezentând acele valori sunt stocate în memoria computerului.

Când avem o variabilă care va conține o serie de caractere, o putem declara ca fiind de tipŞir
Delphi oferă un sortiment sănătos de operatori, funcții și proceduri. Înainte de a aloca un tip de date String unei variabile, trebuie să înțelegem în detaliu cele patru tipuri de șiruri Delphi.

Șir scurt

Pur și simplu pune, Șir scurt este un tablou numărat de (ANSII) caractere, cu până la 255 de caractere în șir. Primul octet al acestui tablou stochează lungimea șirului. Întrucât acesta a fost principalul tip de șir în Delphi 1 (16 biți Delphi), singurul motiv pentru a utiliza șirul scurt este pentru compatibilitatea înapoi. 
Pentru a crea o variabilă de tip ShortString, utilizăm: 

var s: ShortString; s: = 'Programare Delphi'; // S_Length: = Ord (s [0])); // care este aceeași cu Lungimea (i)


 s variabilă este o variabilă cu șir scurt, capabilă să rețină până la 256 de caractere, memoria sa este alocată static de 256 de octeți. Deoarece acest lucru este de obicei risipitor - este puțin probabil ca șirul tău scurt să se răspândească la lungimea maximă - a doua abordare a utilizării șirurilor scurte utilizează subtipuri de shortString, a căror lungime maximă este oriunde de la 0 la 255. 

var ssmall: șir [50]; ssmall: = 'Șir scurt, până la 50 de caractere';

Aceasta creează o variabilă numită ssmall a cărei lungime maximă este de 50 de caractere.

Notă: Atunci când atribuim o valoare unei variabile cu șir scurt, șirul este trunchiat dacă depășește lungimea maximă a tipului. Când trecem șiruri scurte la unele rutine de manipulare a șirurilor Delphi, acestea sunt convertite în și din șiruri lungi.

Coarde / lungi / Ansi

Delphi 2 i-a adus obiectului Pascal Șir lung tip. Șir lung (în ajutorul Delphi AnsiString) reprezintă un șir alocat dinamic a cărui lungime maximă este limitată doar de memoria disponibilă. Toate versiunile Delphi pe 32 de biți folosesc șiruri lungi în mod implicit. Îți recomand să folosești șiruri lungi ori de câte ori poți. 

var s: șir; s: = 'Șirul poate fi de orice dimensiune ...';

 s variabila poate ține de la zero la orice număr practic de caractere. Șirul crește sau se micșorează pe măsură ce îi atribuiți date noi.

Putem folosi orice variabilă șir ca un tablou de caractere, al doilea caracter din s are indexul 2. Codul următor 

s [2]: = 'T';

imputernicitii T la al doilea personaj os s variabil. Acum, câteva dintre primele personaje din  arată ca: TTe s str ... .
Nu vă înșelați, nu puteți utiliza s [0] pentru a vedea lungimea șirului, s nu este ShortString.

Număr de referință, copiere pe scriere

Deoarece alocarea memoriei este făcută de Delphi, nu trebuie să ne facem griji cu privire la colectarea gunoiului. Când lucrați cu Strings Long (Ansi), Delphi folosește numărarea de referințe. În acest fel, copierea șirurilor este de fapt mai rapidă pentru șiruri lungi decât pentru șiruri scurte. 
Număr de referință, de exemplu: