Другое С/С++ Вопрос - Ответ

yung milonov

Известный
1,004
510
Да все нормально выводит. Как вариант пробуй %08X.
тот же результат. мне нужно получать ABCDEF, обрезая два последних символа
1661265966438.png
 

Dark_Knight

Me, me and me.
Друг
4,078
2,095
тот же результат. мне нужно получать ABCDEF, обрезая два последних символа
Посмотреть вложение 164485
Не допонял сначала. Щас (color >> 8). Хотя зачем тебе это я фиг знает. Если ты хочешь цвет игрока так выводит, то мне проще альфа канал установить на FF значение.
 
  • Нравится
Реакции: yung milonov

Savchik Blazer

Но я, мечту свою лелея...
Проверенный
668
294
Как можно сконвертировать экранные координаты игры в экранные координаты системы без апи?
 
  • Нравится
Реакции: Z3roKwq

ARMOR

Модератор по раксампу
Модератор
4,937
6,734
Дайте пожалуйста документацию/гайд по созданию ini/json конфигов. Что-то находил, но не совсем понимал что да как
 

loganhackerdff

Известный
868
519
никто не знает как убрать лимит в сампе на 20000 моделей в .ide, типа я как всегда не нашёл нихуя в иде)
 
  • Нравится
Реакции: Z3roKwq

Savchik Blazer

Но я, мечту свою лелея...
Проверенный
668
294
есть у кого-нибудь DevKitPSP? Если есть скиньте пожалуйста
 

AdCKuY_DpO4uLa

Адский дрочер
Друг
315
666
Как создать лямбда-функцию с определенным соглашением о вызове? К примеру, есть такая лямбда
C++:
auto func = [](int a, int b) { return a + b; };
Как явно указать, что она должна быть __stdcall функцией?
 
  • Клоун
Реакции: Fott

kin4stat

mq-team · kin4@naebalovo.team
Всефорумный модератор
2,744
4,808
Как создать лямбда-функцию с определенным соглашением о вызове? К примеру, есть такая лямбда
C++:
auto func = [](int a, int b) { return a + b; };
Как явно указать, что она должна быть __stdcall функцией?
Она сама кастуется.
При желании можно static_cast<R(__stdcall*)(Args…)>()
 

AdCKuY_DpO4uLa

Адский дрочер
Друг
315
666
есть такой код
C++:
class CClass {
private:
    template<typename T>
    using callbacks = std::vector<T>;

    using SomeCallback_t = void(__stdcall*)(int, int);
 
    callbacks<SomeCallback_t> 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);
};
захватывала переменные по ссылке?
 
  • Клоун
Реакции: Fott