Abilitare JavaScript per vedere questo sito.

Operatore di accesso a singolo byte della stringa.

Sintassi

uint8 &operator[](uint index)

const uint8 &operator[](uint index) const

index

Indice del byte richiesto (tra 0 e size()-1)

Risultato

Rende riferimento al byte richiesto

Note

Le stringhe sono codificate in UTF-8, quindi con codifica multi-byte:

la dimensione effettiva può variare a seconda dei caratteri utilizzati.

l'impostazione di un byte in posizioni errate può causare un errore nella codifica UTF-8 dei successivi caratteri.

Esempio di utilizzo:

string buffer = "Hello!";

for (uint i = 0; i < buffer.size(); i++)

  trace("buffer[" +  i + "] = 0x" + string::format(buffer[i], "0h", 2));

 

/* Output prodotto 

[Debug] buffer[0] = 0x48

[Debug] buffer[1] = 0x65

[Debug] buffer[2] = 0x6c

[Debug] buffer[3] = 0x6c

[Debug] buffer[4] = 0x6f

[Debug] buffer[5] = 0x21 */

 

string buffer2 = "ՈՂՋՈՒ՜ՅՆ";

for (uint i = 0; i < buffer2.size(); i++)

  trace("buffer2[" +  i + "] = 0x" + string::format(buffer2[i], "0h", 2));

 

/* Output prodotto 

[Debug] buffer2[0] = 0xd5

[Debug] buffer2[1] = 0x88

[Debug] buffer2[2] = 0xd5

[Debug] buffer2[3] = 0x82

[Debug] buffer2[4] = 0xd5

[Debug] buffer2[5] = 0x8b

[Debug] buffer2[6] = 0xd5

[Debug] buffer2[7] = 0x88

[Debug] buffer2[8] = 0xd5

[Debug] buffer2[9] = 0x92

[Debug] buffer2[10] = 0xd5

[Debug] buffer2[11] = 0x9c

[Debug] buffer2[12] = 0xd5

[Debug] buffer2[13] = 0x85

[Debug] buffer2[14] = 0xd5

[Debug] buffer2[15] = 0x86 */

 

/* Assegnazione a byte della stringa per testo "Hello!" */

string buffer;

buffer.resize(6);

buffer[0] = 0x48;

buffer[1] = 0x65;

buffer[2] = 0x6c;

buffer[3] = 0x6c;

buffer[4] = 0x6f;

buffer[5] = 0x21;

 

  

Keyboard Navigation

F7 for caret browsing
Hold ALT and press letter

This Info: ALT+q
Page Header: ALT+h
Topic Header: ALT+t
Topic Body: ALT+b
Contents: ALT+c
Search: ALT+s
Exit Menu/Up: ESC