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

  #6381  
Старый 30.08.2022, 00:22
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

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

Дайте пожалуйста документацию/гайд по созданию ini/json конфигов. Что-то находил, но не совсем понимал что да как
GitHub - nlohmann/json: JSON for Modern C++

JSON for Modern C++. Contribute to nlohmann/json development by creating an account on GitHub.

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

  #6382  
Старый 31.08.2022, 13:17
loganhackerdff
Постоянный
Регистрация: 24.07.2017
Сообщений: 867
С нами: 4633764

Репутация: 148


По умолчанию

никто не знает как убрать лимит в сампе на 20000 моделей в .ide, типа я как всегда не нашёл нихуя в иде)
 
Ответить с цитированием

  #6383  
Старый 01.09.2022, 13:33
Savchik Blazer
Постоянный
Регистрация: 20.03.2021
Сообщений: 666
С нами: 2711257

Репутация: 83


По умолчанию

есть у кого-нибудь DevKitPSP? Если есть скиньте пожалуйста
 
Ответить с цитированием

  #6384  
Старый 12.09.2022, 01:59
AdCKuY_DpO4uLa
Постоянный
Регистрация: 05.08.2018
Сообщений: 372
С нами: 4091290

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

Как создать лямбда-функцию с определенным соглашением о вызове? К примеру, есть такая лямбда

C++:





Код:
auto
func
=
[
]
(
int
a
,
int
b
)
{
return
a
+
b
;
}
;


Как явно указать, что она должна быть __stdcall функцией?
 
Ответить с цитированием

  #6385  
Старый 12.09.2022, 03:10
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

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

Как создать лямбда-функцию с определенным соглашением о вызове? К примеру, есть такая лямбда

C++:





Код:
auto
func
=
[
]
(
int
a
,
int
b
)
{
return
a
+
b
;
}
;


Как явно указать, что она должна быть __stdcall функцией?
Она сама кастуется.

При желании можно
Код:
static_cast()
 
Ответить с цитированием

  #6386  
Старый 12.09.2022, 19:20
AdCKuY_DpO4uLa
Постоянный
Регистрация: 05.08.2018
Сообщений: 372
С нами: 4091290

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

есть такой код

C++:





Код:
class
CClass
{
private
:
template

using
callbacks
=
std
::
vector

;
using
SomeCallback_t
=
void
(
__stdcall
*
)
(
int
,
int
)
;
callbacks

vecCallBacks
;
public
:
inline
auto
operator
+=
(
SomeCallback_t func
)
->
void
{
vecCallBacks
.
push_back
(
func
)
;
}
;
inline
auto
ProcessCallBack
(
int
a
,
int
b
)
->
void
{
printf
(
"start of calling\n"
)
;
for
(
auto
i
:
vecCallBacks
)
{
i
(
a
,
b
)
;
}
printf
(
"end of calling\n"
)
;
}
;
}
;
int
main
(
)
{
CClass tmp
;
int
var1
=
10
;
tmp
+=
[
&
]
(
int
a
,
int
b
)
{
var1
++
;
printf
(
"%d + %d = %d\n"
,
a
,
b
,
a
+
b
)
;
}
;
while
(
true
)
{
tmp
.
ProcessCallBack
(
rand
(
)
%
100
,
rand
(
)
%
100
)
;
Sleep
(
300
)
;
}
return
0
;
}


Если указывать лямбду без захвата по ссылке, всё работает, однако, если попытаться создать лямбду с захватом переменных по ссылке, пишет, что нет перегруженного оператора +=, вопрос в том, как сделать так, чтобы лямбда

C++:





Код:
tmp
+=
[
&
]
(
int
a
,
int
b
)
{
var1
++
;
printf
(
"%d + %d = %d\n"
,
a
,
b
,
a
+
b
)
;
}
;


захватывала переменные по ссылке?
 
Ответить с цитированием

  #6387  
Старый 12.09.2022, 19:21
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

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

есть такой код

C++:





Код:
class
CClass
{
private
:
template

using
callbacks
=
std
::
vector

;
using
SomeCallback_t
=
void
(
__stdcall
*
)
(
int
,
int
)
;
callbacks

vecCallBacks
;
public
:
inline
auto
operator
+=
(
SomeCallback_t func
)
->
void
{
vecCallBacks
.
push_back
(
func
)
;
}
;
inline
auto
ProcessCallBack
(
int
a
,
int
b
)
->
void
{
printf
(
"start of calling\n"
)
;
for
(
auto
i
:
vecCallBacks
)
{
i
(
a
,
b
)
;
}
printf
(
"end of calling\n"
)
;
}
;
}
;
int
main
(
)
{
CClass tmp
;
int
var1
=
10
;
tmp
+=
[
&
]
(
int
a
,
int
b
)
{
var1
++
;
printf
(
"%d + %d = %d\n"
,
a
,
b
,
a
+
b
)
;
}
;
while
(
true
)
{
tmp
.
ProcessCallBack
(
rand
(
)
%
100
,
rand
(
)
%
100
)
;
Sleep
(
300
)
;
}
return
0
;
}


Если указывать лямбду без захвата по ссылке, всё работает, однако, если попытаться создать лямбду с захватом переменных по ссылке, пишет, что нет перегруженного оператора +=, вопрос в том, как сделать так, чтобы лямбда

C++:





Код:
tmp
+=
[
&
]
(
int
a
,
int
b
)
{
var1
++
;
printf
(
"%d + %d = %d\n"
,
a
,
b
,
a
+
b
)
;
}
;


захватывала переменные по ссылке?
лямбда с захватом это объект с состоянием, поэтому она не кастуется в простую функцию
 
Ответить с цитированием

  #6388  
Старый 12.09.2022, 19:26
AdCKuY_DpO4uLa
Постоянный
Регистрация: 05.08.2018
Сообщений: 372
С нами: 4091290

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

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

лямбда с захватом это объект с состоянием, поэтому она не кастуется в простую функцию
Заставить ее кастоваться в функцию никак нельзя?
 
Ответить с цитированием

  #6389  
Старый 12.09.2022, 19:26
sc6ut
Постоянный
Регистрация: 03.05.2020
Сообщений: 385
С нами: 3174020

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

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

есть такой код

C++:





Код:
class
CClass
{
private
:
template

using
callbacks
=
std
::
vector

;
using
SomeCallback_t
=
void
(
__stdcall
*
)
(
int
,
int
)
;
callbacks

vecCallBacks
;
public
:
inline
auto
operator
+=
(
SomeCallback_t func
)
->
void
{
vecCallBacks
.
push_back
(
func
)
;
}
;
inline
auto
ProcessCallBack
(
int
a
,
int
b
)
->
void
{
printf
(
"start of calling\n"
)
;
for
(
auto
i
:
vecCallBacks
)
{
i
(
a
,
b
)
;
}
printf
(
"end of calling\n"
)
;
}
;
}
;
int
main
(
)
{
CClass tmp
;
int
var1
=
10
;
tmp
+=
[
&
]
(
int
a
,
int
b
)
{
var1
++
;
printf
(
"%d + %d = %d\n"
,
a
,
b
,
a
+
b
)
;
}
;
while
(
true
)
{
tmp
.
ProcessCallBack
(
rand
(
)
%
100
,
rand
(
)
%
100
)
;
Sleep
(
300
)
;
}
return
0
;
}


Если указывать лямбду без захвата по ссылке, всё работает, однако, если попытаться создать лямбду с захватом переменных по ссылке, пишет, что нет перегруженного оператора +=, вопрос в том, как сделать так, чтобы лямбда

C++:





Код:
tmp
+=
[
&
]
(
int
a
,
int
b
)
{
var1
++
;
printf
(
"%d + %d = %d\n"
,
a
,
b
,
a
+
b
)
;
}
;


захватывала переменные по ссылке?
юзай std function
 
Ответить с цитированием

  #6390  
Старый 13.09.2022, 09:36
Ltall
Новичок
Регистрация: 19.06.2022
Сообщений: 14
С нами: 2055431

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

Как исправить? https://prnt.sc/KKZw_b8gTUPz

В препроцессоре стоит /NODEFAULTLIB:libcmt.lib
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.

×

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

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

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

Сумма USDT:

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

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

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

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

×

Мои сделки

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

Сделка


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

ESCROW ADMIN PANEL

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