 |

23.02.2021, 02:37
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Поймут лишь те, кто писал чат-команды на C++:
C++:
Код:
static
SAMP
::
Input
::
CommandEx
test
(
"test"
,
[
]
(
int
a
,
float
b
)
{
// Тут целое число в `a` и дробное в `b`
}
)
;
test
.
redirectFail
(
[
]
(
SAMP
::
Input
::
CmdFail fail
,
int
arg
)
{
switch
(
fail
)
{
case
SAMP
::
Input
::
CmdFail
::
NOARGS
:
// Команда вызвана без аргументов. В `arg` записан 0
break
;
case
SAMP
::
Input
::
CmdFail
::
MANYARGS
:
// В команду передано слишком много аргументов. В `arg` количество аргументов
break
;
case
SAMP
::
Input
::
CmdFail
::
FEWARGS
:
// В команду передано слишком мало аргументов. В `arg` количество аргументов
break
;
case
SAMP
::
Input
::
CmdFail
::
INVALIDARGS
:
// В команду передан не верный аргумент, например строка вместо числа. В `arg` номер аргумента
break
;
}
}
)
;
if
(
!
test
.
isInstalled
(
)
)
test
.
install
(
)
;
// регистрация команды
Код класса, который позволяет создать конечный автомат на основе шаблона: https://gitlab.com/prime-hack/samp/p...P/Input.h#L256
|
|
|

23.02.2021, 03:50
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Хидер:
Код:
// в классе FogDist
SAMP
::
Input
::
CommandEx
cmd
{
"fogdist"
}
;
void
command
(
float
d
)
;
void
command
(
SAMP
::
Input
::
CmdFail fail
,
size_t
/* unused */
)
;
Сурс:
Код:
cmd
.
install
(
this
,
&
FogDist
::
command
)
;
cmd
.
redirectFail
(
this
,
&
FogDist
::
command
)
;
// ...
void
FogDist
::
command
(
float
d
)
{
// ...
}
void
FogDist
::
command
(
SAMP
::
Input
::
CmdFail fail
,
size_t
)
{
// ...
}
|
|
|

23.02.2021, 14:16
|
|
Постоянный
Регистрация: 05.10.2020
Сообщений: 509
С нами:
2950908
Репутация:
48
|
|
Зачем
|
|
|

23.02.2021, 14:35
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Сообщение от Majunti
Зачем
Сообщение от SR_team
Поймут лишь те, кто писал чат-команды на C++
|
|
|

23.02.2021, 15:25
|
|
Новичок
Регистрация: 16.03.2016
Сообщений: 29
С нами:
5346942
Репутация:
53
|
|
А нахуя тебе столько неймпспейсов?
|
|
|

23.02.2021, 15:57
|
|
Постоянный
Регистрация: 26.03.2016
Сообщений: 660
С нами:
5332594
Репутация:
163
|
|
Сообщение от Majunti
Зачем
Регает команды и упрощает с ними работу. Можно сразу указать с какими типами данных должны быть аргументы команды и получить их значения.
Есть обработчик "ошибок", в случае отстуствия одного или нескольких аргументов можно выполнять разные действия.
Сообщение от RatinovPlay
А нахуя тебе столько неймпспейсов?
Для прикола
|
|
|

23.02.2021, 20:09
|
|
Познавший АНТИЧАТ
Регистрация: 02.08.2018
Сообщений: 1,295
С нами:
4095395
Репутация:
183
|
|
Сообщение от RatinovPlay
А нахуя тебе столько неймпспейсов?
красиво выглядит при вызове
1614096547579.pngatizoff · 23 Фев 2021 в 19:09' data-fancybox="lb-post-677193" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/87403/" style="cursor: pointer;" title="1614096547579.png">
да и каждый дрочет как он хочет, поэтому вот так вот
|
|
|

23.02.2021, 20:18
|
|
Постоянный
Регистрация: 05.10.2020
Сообщений: 509
С нами:
2950908
Репутация:
48
|
|
Сообщение от RECEIVER
Регает команды и упрощает с ними работу. Можно сразу указать с какими типами данных должны быть аргументы команды и получить их значения.
Есть обработчик "ошибок", в случае отстуствия одного или нескольких аргументов можно выполнять разные действия.
Я думал скрипт для взлома серверов😕
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|