HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #2461  
Старый 17.06.2018, 00:26
itsOkke
Познающий
Регистрация: 12.04.2018
Сообщений: 86
С нами: 4256625

Репутация: 0
По умолчанию

Цитата:
Сообщение от Niko  

Как раз таки из разных плагинов
так чевоже ты сразу не указал это

в разных файлах я подумал что в разных файлах проекта лмао
 
Ответить с цитированием

  #2462  
Старый 18.06.2018, 01:33
Sasiko1
Новичок
Регистрация: 12.06.2018
Сообщений: 24
С нами: 4168872

Репутация: 0
По умолчанию

Опишите что он делает

C++:





Код:
stRemotePlayer
*
pPlayer
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
i
]
;
if
(
!
pPlayer
)
return
;
 
Ответить с цитированием

  #2463  
Старый 18.06.2018, 01:38
#Rin
Познавший АНТИЧАТ
Регистрация: 09.08.2015
Сообщений: 1,213
С нами: 5663255

Репутация: 183


По умолчанию

Цитата:
Сообщение от Sasiko1  

stRemotePlayer *pPlayer = SF->getSAMP()->getPlayers()->pRemotePlayer[ i ];
Помещает в переменную pPlayer указатель на структуру игрока с id'ом находящимся в переменной i.

Цитата:
Сообщение от Sasiko1  

if(!pPlayer) return;
Проверяет ее валидность.
 
Ответить с цитированием

  #2464  
Старый 18.06.2018, 23:34
_Vine_
Участник форума
Регистрация: 06.01.2016
Сообщений: 154
С нами: 5447649

Репутация: 28
По умолчанию

Пропустил тему ООП и теперь страдаю при разборе других сурсов читов по типу индиго или крмп трейнера слонобойки, так как там весь код разбит на отдельные маленькие cpp/h файлы, а я пишу все в одном файле на 5к строк.

Короче говоря, появляется ошибка "class CTest * test уже определен в main.obj" если *test определен в файле test.h.

Если *test определить в main'e - то все будет норм.

А нужно определить *test в test.h.

Как решить?

 
Ответить с цитированием

  #2465  
Старый 18.06.2018, 23:38
#Rin
Познавший АНТИЧАТ
Регистрация: 09.08.2015
Сообщений: 1,213
С нами: 5663255

Репутация: 183


По умолчанию

Цитата:
Сообщение от _Vine_  

а я пишу все в одном файле на 5к строк.
Так делать не надо, изменил один символ и его полностью нужно перекомпилить.

В .h файле создаешь то что на скрине. В .cpp сами функции и подключенный .h файл.

В файле где нужно подключить класс, просто подключаешь .h файл.
 
Ответить с цитированием

  #2466  
Старый 18.06.2018, 23:40
_Vine_
Участник форума
Регистрация: 06.01.2016
Сообщений: 154
С нами: 5447649

Репутация: 28
По умолчанию

Цитата:
Сообщение от Rinat_Namazov  

Так делать не надо, изменил один символ и его полностью нужно перекомпилить.

В .h файле создаешь то что на скрине. В .cpp сами функции и подключенный .h файл.
В файле где нужно подключить класс, просто подключаешь .h файл.
Уже я это понял, вот и учусь делать нормально, но теперь появляются новые проблемы, по типу этой.
 
Ответить с цитированием

  #2467  
Старый 18.06.2018, 23:43
#Rin
Познавший АНТИЧАТ
Регистрация: 09.08.2015
Сообщений: 1,213
С нами: 5663255

Репутация: 183


По умолчанию

Цитата:
Сообщение от _Vine_  

Уже я это понял, вот и учусь делать нормально, но теперь появляются новые проблемы, по типу этой.
Ты подключаешь оба .h файла в разные .cpp файлы.

Но в .h файле объявлена переменная, вот и выходить в итоге два одинаковых объявления, а это уже ошибка.

Убери это:



В каком-то файле (.cpp) объявляешь CTest *test;

Если в другом файле нужна эта переменная то в том файле (или в .h).

extern CTest *test;
 
Ответить с цитированием

  #2468  
Старый 18.06.2018, 23:47
_Vine_
Участник форума
Регистрация: 06.01.2016
Сообщений: 154
С нами: 5447649

Репутация: 28
По умолчанию

Цитата:
Сообщение от Rinat_Namazov  

Ты подключаешь оба .h файла в разные .cpp файлы.
Но в .h файле объявлена переменная, вот и выходить в итоге два одинаковых объявления, а это уже ошибка.
Убери это:

В каком-то файле (.cpp) объявляешь CTest *test;
Если в другом файле нужна эта переменная то в том файле (или в .h).
extern CTest *test;
Понял, знач как я хотел не выйдет, спасибо за помощь)

Думал и без extern'a получится.
 
Ответить с цитированием

  #2469  
Старый 19.06.2018, 00:29
Sasiko1
Новичок
Регистрация: 12.06.2018
Сообщений: 24
С нами: 4168872

Репутация: 0
По умолчанию

Как получить модель машины и её id?
 
Ответить с цитированием

  #2470  
Старый 19.06.2018, 00:41
CleanLegend
Постоянный
Регистрация: 28.03.2013
Сообщений: 495
С нами: 6908018

Репутация: 213
По умолчанию

Цитата:
Сообщение от Sasiko1  

Как получить модель машины и её id?
Модель храниться в структуре vehicle_info:

C++:





Код:
pGTA_Vehicle
->
base
.
model_alt_id


ид машины можно получить через пул сампа, примеры есть в собейте

C++:





Код:
for
(
int
j
=
0
;
j

iIsListed
[
j
]
!=
1
)
continue
;
if
(
g_Vehicles
->
pSAMP_Vehicle
[
j
]
==
NULL
)
continue
;
if
(
g_Vehicles
->
pSAMP_Vehicle
[
j
]
->
pGTA_Vehicle
==
NULL
)
continue
;
}
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору. Комиссия форума: 2%.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...
×

ESCROW ADMIN PANEL

Загрузка...
Загрузка...