Elrmrnt-Kritik
14.07.2018, 00:39
Всем привет. Подскажите пожалуйста, тот факт, что константную строку нельзя передать в качестве аргумента ShowPlayerDialog, - это баг компилятора или это некая особенность? К слову, проверял и в NotePad++, и в Visual Studio Code:
new const gText[] = "какая-то строка";
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Название", "Текст", "Кнопка1", gText);
// error 035: argument type mismatch (argument 7)
new const gText[] = "какая-то строка";
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Название", "Текст", gText, "Кнопка2");
// error 035: argument type mismatch (argument 6)
new const gText[] = "какая-то строка";
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Название", gText, "Кнопка1", "Кнопка2");
// error 035: argument type mismatch (argument 5)
new const gText[] = "какая-то строка";
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, gText, "Текст", "Кнопка1", "Кнопка2");
// error 035: argument type mismatch (argument 4)
Аналогичная ситуация со static const. А если использовать просто new или просто static - все хорошо.
(я на этом пытаюсь выиграть в памяти, поскольку у меня порядка 30 диалогов с одинаковыми названиями и кнопками)
new const gText[] = "какая-то строка";
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Название", "Текст", "Кнопка1", gText);
// error 035: argument type mismatch (argument 7)
new const gText[] = "какая-то строка";
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Название", "Текст", gText, "Кнопка2");
// error 035: argument type mismatch (argument 6)
new const gText[] = "какая-то строка";
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Название", gText, "Кнопка1", "Кнопка2");
// error 035: argument type mismatch (argument 5)
new const gText[] = "какая-то строка";
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, gText, "Текст", "Кнопка1", "Кнопка2");
// error 035: argument type mismatch (argument 4)
Аналогичная ситуация со static const. А если использовать просто new или просто static - все хорошо.
(я на этом пытаюсь выиграть в памяти, поскольку у меня порядка 30 диалогов с одинаковыми названиями и кнопками)