 |
|

03.04.2016, 18:23
|
|
Участник форума
Регистрация: 14.05.2014
Сообщений: 149
С нами:
6314183
Репутация:
68
|
|
Сообщение от Dark_Knight
логируй каждое действие.
Kak?
Только заметил проблемку...
Код:
Код:
SF->getSAMP()->getDialog()->ShowDialog(101, 2, "Название", "1\n2\n3", "Выбрать", "Закрыть");
Код:
Код:
switch (dialogId)
{
case 101:
{
if (buttonId == 1)
{
if (listItem == 0) SF->getSAMP()->getChat()->AddChatMessage(-1, "1-1.");
if (listItem == 1) SF->getSAMP()->getChat()->AddChatMessage(-1, "1-2.");
if (listItem == 2) SF->getSAMP()->getDialog()->ShowDialog(102, 2, "Пункт 3", "1\n2", "Выбрать", "Закрыть");
}
else
{
SF->getSAMP()->getChat()->AddChatMessage(-1, "101 закрыт.");
}
}
case 102:
{
if (buttonId == 1)
{
if (listItem == 0) SF->getSAMP()->getChat()->AddChatMessage(-1, "2-1.");
if (listItem == 1) SF->getSAMP()->getChat()->AddChatMessage(-1, "2-2.");
}
else
{
SF->getSAMP()->getChat()->AddChatMessage(-1, "102 закрыт.");
}
}
}
При выборе любого пункта из 101 диалога выводит в чат сообщения из 102 диалога. WTF  Сообщения при закрытии выводит за оба диалога так же.
|
|
|

03.04.2016, 20:43
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
Заюзай брик после выполнения нужно действия.
|
|
|

04.04.2016, 12:47
|
|
Участник форума
Регистрация: 14.05.2014
Сообщений: 149
С нами:
6314183
Репутация:
68
|
|
Почему крашит при использовании SF->getSAMP()->getDialog()->Close(2) ?
|
|
|

04.04.2016, 12:57
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
Потому что нет кнопки 2 в диалогах. Только 0 и 1
|
|
|

04.04.2016, 13:06
|
|
Участник форума
Регистрация: 14.05.2014
Сообщений: 149
С нами:
6314183
Репутация:
68
|
|
Сообщение от Dark_Knight
Потому что нет кнопки 2 в диалогах. Только 0 и 1
[S]При SF->getSAMP()->getDialog()->Close( false/0) тоже крашит.
Бля, писать плагины для CS куда проще.  [/S]
Разобрался.
|
|
|

04.04.2016, 23:20
|
|
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами:
5706781
Репутация:
43
|
|
Как правильно освободить выделенную память? Достаточно просто освободить переменную, которая содержит указатель на класс, в котором тоже выделяется память или нужно сначала освободить память в классе, а потом освободить переменную-класс. Код ниже будет правильным?
C++:
Код:
class
MyClass
{
int
*
i
=
new
int
;
}
;
MyClass
*
Class
=
new
MyClass
;
// some code
delete
Class
;
|
|
|

04.04.2016, 23:26
|
|
Постоянный
Регистрация: 14.06.2015
Сообщений: 402
С нами:
5744580
Репутация:
28
|
|
Какое RPC/пакет приходит когда любой человек на сервере умирает?
|
|
|

05.04.2016, 01:13
|
|
Постоянный
Регистрация: 26.05.2013
Сообщений: 692
С нами:
6822856
Репутация:
213
|
|
Сообщение от AWRage
Как правильно освободить выделенную память? Достаточно просто освободить переменную, которая содержит указатель на класс, в котором тоже выделяется память или нужно сначала освободить память в классе, а потом освободить переменную-класс. Код ниже будет правильным?
C++:
Код:
class
MyClass
{
int
*
i
=
new
int
;
}
;
MyClass
*
Class
=
new
MyClass
;
// some code
delete
Class
;
В деструкторе класса высвобождать выделенную в классе память. Деструктор автоматически вызовется при выполнении delete Class;
|
|
|

06.04.2016, 23:55
|
|
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами:
5706781
Репутация:
43
|
|
Сообщение от NarutoUA
В деструкторе класса высвобождать выделенную в классе память. Деструктор автоматически вызовется при выполнении delete Class;
А как на счет обычных переменных? Их не нужно освобождать в деструкторе? Они сами удалятся после удаления класса, как локальные переменные в функции, так?
|
|
|

07.04.2016, 00:00
|
|
Постоянный
Регистрация: 26.05.2013
Сообщений: 692
С нами:
6822856
Репутация:
213
|
|
Сообщение от AWRage
А как на счет обычных переменных? Их не нужно освобождать в деструкторе? Они сами удалятся после удаления класса, как локальные переменные в функции, так?
Сами, класс это как структура, только класс.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|