[SourcePawn] Урок 9 - ADT Array (ArrayList)

DENFER

Пишу плагины за два биг тести и картошку фри..
Сообщения
260
Реакции
289
По тому, что у меня там в списке их 150 штук
Так, тогда мне не понятна логика. Ты выше объявил переменную (не массив), а в функции OnPluginStart() обращаешься к этой переменной по индексу. У ArrayList же есть свой метод Get(). Разве не так это должно работать... 🙃
 

Nekro

Терра инкогнита
Сообщения
4,042
Реакции
2,295
Так, тогда мне не понятна логика. Ты выше объявил переменную (не массив), а в функции OnPluginStart() обращаешься к этой переменной по индексу. У ArrayList же есть свой метод Get(). Разве не так это должно работать... 🙃
Так лучше?

C-подобный:
ArrayList hArray[2];

public void OnPluginStart()
{
    hArray[0] = new ArrayList(ByteCountToCells(64));
    hArray[1] = new ArrayList(ByteCountToCells(64));
    
    char sValue[512];
    sValue = "[****.ru] Вы пополнили свой баланс на [10] рублей";
    
    hArray.PushString(sValue);
    
    GetArrayString(hArray[0], 0, tt, sizeof(tt));
    
    PrintToChatAll("%s", tt);
}
 

DENFER

Пишу плагины за два биг тести и картошку фри..
Сообщения
260
Реакции
289
Так лучше?

C-подобный:
ArrayList hArray[2];

public void OnPluginStart()
{
    hArray[0] = new ArrayList(ByteCountToCells(64));
    hArray[1] = new ArrayList(ByteCountToCells(64));
 
    char sValue[512];
    sValue = "[****.ru] Вы пополнили свой баланс на [10] рублей";
 
    hArray.PushString(sValue);
 
    GetArrayString(hArray[0], 0, tt, sizeof(tt));
 
    PrintToChatAll("%s", tt);
}
Подожди, зачем тебе 6 строчка нужна? Если ты обращаешься к переменной, зачем излишний код - не стоит обращаться к ней по индексу убери оператор [ ]. Если мы говорим не о массиве, как у тебя было до этого. Меня смутило, что переменная типа ArrayList единственная и ты обращаешься к ней по индексу. Максимально странно.
 

Nekro

Терра инкогнита
Сообщения
4,042
Реакции
2,295
Подожди, зачем тебе 6 строчка нужна? Если ты обращаешься к переменной, зачем излишний код - не стоит обращаться к ней по индексу убери оператор [ ].
В данном примере вообще не нужна
 

Young <

Now, finally free
Сообщения
1,263
Реакции
507
@Nekro кириллица двухбайтовая, на глаз видно, что больше 64 б в вашей строке.
 
Сверху Снизу