Просмотр полной версии : [Вопрос] Очистка enum
Edward Morra
09.02.2017, 12:08
У меня возник такой вопрос ребят.
Если в enum много перменных, как то очистить их разом все ? Ибо каждую переменную обнулять это ж долго...
Есть два варианта:
1) Вариант от ziggi:
enum SomeEuum {
line1, line2
};
new SomeGlobalVar[10][SomeEnum];
new NULL_SomeEnum[SomeEnum];
main()
{
SomeGlobalVar[0] = NULL_SomeEnum;
}
2) memset (http://pro-pawn.ru/showthread.php?14919-memset-%D1%81%D0%B0%D0%BC%D0%B0%D1%8F-%D0%B1%D1%8B%D1%81%D1%82%D1%80%D0%B0%D1%8F-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F&p=82311&viewfull=1#post82311)
Edward Morra
09.02.2017, 12:59
Есть два варианта:
1) Вариант от ziggi:
enum SomeEuum {
line1, line2
};
new SomeGlobalVar[10][SomeEnum];
new NULL_SomeEnum[SomeEnum];
main()
{
SomeGlobalVar[0] = NULL_SomeEnum;
}
2) memset (http://pro-pawn.ru/showthread.php?14919-memset-%D1%81%D0%B0%D0%BC%D0%B0%D1%8F-%D0%B1%D1%8B%D1%81%D1%82%D1%80%D0%B0%D1%8F-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F&p=82311&viewfull=1#post82311)
1 вариант чистит полностью весь enum.
А допустим если мне нужно очистить все переменные ячейки по n'ым номером?
Допустим есть enum с хранением тачек сервера. И мне надо обнулить 188 номер все переменные...
Edward Morra
09.02.2017, 17:20
Есть два варианта:
1) Вариант от ziggi:
enum SomeEuum {
line1, line2
};
new SomeGlobalVar[10][SomeEnum];
new NULL_SomeEnum[SomeEnum];
main()
{
SomeGlobalVar[0] = NULL_SomeEnum;
}
2) memset (http://pro-pawn.ru/showthread.php?14919-memset-%D1%81%D0%B0%D0%BC%D0%B0%D1%8F-%D0%B1%D1%8B%D1%81%D1%82%D1%80%D0%B0%D1%8F-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F&p=82311&viewfull=1#post82311)
Ругается на
memset(VehicleInfo[vehid],0,VehicleInfo);
new.pwn(99834) : error 059: function argument may not have a default value (variable "size")
new.pwn(99834) : error 059: function argument may not have a default value (variable "size")
Nexius_Tailer
09.02.2017, 18:25
Есть два варианта:
1) Вариант от ziggi:
Насколько я помню, его предлагали ещё гораздо раньше на официальном форуме
1 вариант чистит полностью весь enum.
А допустим если мне нужно очистить все переменные ячейки по n'ым номером?
Допустим есть enum с хранением тачек сервера. И мне надо обнулить 188 номер все переменные...
Так указывай ид нужной тачки в первой мере массива, т.е.:
enum vInfo
{
line1,
line2
}
new
VehicleInfo[MAX_VEHICLES][vInfo],
NULL_VehicleInfo[vInfo];
main()
{
VehicleInfo[188] = NULL_VehicleInfo; //
}
И будет идти обнуление данных для конкретного ида
vovandolg
09.02.2017, 19:17
1 вариант чистит полностью весь enum.
А допустим если мне нужно очистить все переменные ячейки по n'ым номером?
Допустим есть enum с хранением тачек сервера. И мне надо обнулить 188 номер все переменные...
Берёшь включаешь мозги, копируешь вариант от ziggy, спариваешь его с циклом и вуаля)
for(new player_information:e; e < player_information; ++e) pInfo[playerid][e] = 0;
?
vovandolg
11.02.2017, 09:41
enum vInfo
{
line1,
line2
}
new
VehicleInfo[MAX_VEHICLES][vInfo],
NULL_VehicleInfo[vInfo];
main()
{
for (new v = 1; v < MAX_VEHICLES; v++) VehicleInfo[v] = NULL_VehicleInfo;
}
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot