Задать вопрос
Ответы пользователя по тегу C++
  • Отрисовка наложений в windows?

    VoidVolker
    @VoidVolker Куратор тега Windows
    Dark side eye. А у нас печеньки! А у вас?
    можно ли сделать моё наложение частью окна

    Только со стороны механизма рендеринга окна. Если у этого окна есть свой кастомный рендер контента, конечно. Если это простое системное окно - то нельзя.
    Ответ написан
    Комментировать
  • По какому принципу работает метод Utils::GetRandomNumber в Lineage 2?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    • Открыть исходный код и посмотреть
    • При отсутствии исходного кода дизассемблировать и посмотреть

    В простейшем случае генерируемое число зависит от системного времени на момент вызова, пачки множителей/делителей и какой-то соли, сгенерированной заранее или в предыдущий сеанс/вызов. В чуть более сложном случае может дополнительно браться какой-то системный параметр типа серийного номера платы, диска, системы и т.п. В совсем сложных случаях используется встроенный в процессор/плату/отдельно подключённый генератор псевдо-случайных чисел с дополнительным применением множества математических и криптографических операций.
    Ответ написан
    2 комментария
  • Как повторить такую "отрисовку" в терминале на Linux?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Google -> bash color -> тысячи мануалов. Использовать поиск по назначению - не так уж и сложно, правда же?
    Ответ написан
    2 комментария
  • Почему эмуляция кликов мыши через SendInput блокируется после трёх срабатываний?

    VoidVolker
    @VoidVolker Куратор тега Windows
    Dark side eye. А у нас печеньки! А у вас?
    Неужели для работы такого достаточно простенького кода придется обращаться к драйверам?

    В играх - да, ибо там своя атмосфера с античитами и банхаммерами. Вам нужен драйвер пользовательского ввода в ядре ОС (ring0). А туда пускают только с подписью (ну или ломать систему). Ищите на форумах автоита - там вроде был такой. Альтернативный вариант - свой контроллёр в USB порт, прикидывающийся мышкой/клавиатурой и которым можно рулить через драйвер уже в пользовательском пространстве.
    Ответ написан
    1 комментарий
  • На чём создать прогу для обработки больших данных?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Лучше для чего именно? В общем случае - на том, что знаете или что интересно было бы изучить.
    Ответ написан
    2 комментария
  • Как автоматически ввести команду из одной программы в консоль другой программы?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Использовать перенаправление или проксирование стандартного ввода и стандартного вывода. RFTM:
    Ответ написан
    Комментировать
  • Возможно ли реализовать TCP на Delphi?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Ставьте виртуалку в VirtualBox и не парьтесь с импортом сишных заголовков в дельфи.
    Ответ написан
    3 комментария
  • Из-за чего программа C++ на amd работает быстрее чем на intel?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Из-за того, что процессоры от разных производителей обладают разной производительностью, внезапно, из-за отличий в архитектуре, командах, транзисторах, частотах, кэшах и во всём остальном. Сюрприз! А еще есть такие факторы как: кэши, оперативная память, дисковая подсистема, запущенные приложения, сервисы, разные ОС, разные чипсеты, разные биосы, да даже вентилятор на процессоре может влиять на производительность, из-за которого турбобуст какой-нибудь включится или выключится, и еще целый вагон других факторов.
    Ответ написан
    5 комментариев
  • Какие технологии надо для создания мессенджера?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Сетевой стек, любой ЯП и любая библиотека для графического интерфейса. Да, можете использовать C#. Если хочется - можно и С++ вместе с Qt. И то и то даже в мобилки умеет - так что часть кодовой базы получится сделать кроссплатформенной. Для отображения интерфейса есть куча либ: под дотнет есть MAUI кроссплатформенный и WPF под винду. Для браузерного мессенджера надо API на WebSocket и любой фронт - хоть Vue/Rect, хоть простой UIKit.
    Ответ написан
    Комментировать
  • Рекомендации по созданию приложения на C++?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Подойдёт ли Windows Forms? Мне ведь потом на мобилку порт делать.

    Формы - это .Net и только для винды. Причем это уже очень старое легаси, которое имеет смысл использовать только для поддержки Windows XP - а у нас тут уже поддержка 10 заканчивается так-то. А .Net - это прежде всего C#. И вот на C# есть более новый WPF и кроссплатформенный MAUI. Для мобилки все равно придется переписывать с нуля или искать какие-то варианты решений, которые могут C# в мобилки.

    Или на мобилку лучше не на C++ делать? Что посоветуете?

    Не самое лучшее решение - там родная платформа Java и Swift. Qt умеет: https://doc.qt.io/qt-6/mobiledevelopment.html - но как оно там в результате будет работать сложно сказать и можно ожидать каких-нибудь слабопрогнозируемых глюков и сложностей. Спасибо Adamos.

    Может кому-то известны нюансы при постройке такой программы?

    Известны и т.к. вы нуб - для вас весь ваш процесс разработки будет нюансом и тут уже попахивает как минимум долгосрочной регулярной консультацией или менторство.

    В общем, у вас несколько вариантов. Вариант раз: если хотите именно плюсы - то вам следует использовать Qt и писать код сразу с учетом дальнейших доработок для работы в Linux, Mac и на мобилках - не знаю, как и на сколько хорошо Qt умеет в мобилки, но могут быть какие-то сложности/баги. Ну, в кроссплатформе от этого не уйти - придётся мириться и местами писать разный код для разных платформ.

    Вариант два: если хотите сразу писать приложение сразу для всех платформ с единой кодовой базой и минимальными услиями - то можно использовать веб-платформы типа NWJS, Cordova и прочие браузерные платформы. Минус - приложение будет тяжёлым и ощутимо более медленным, чем нормальное нативное.

    В целом, могу рекомендовать для начала просто сделать на плюсах с Qt хоть какое-то приложение для винды, далее внести доработки для работы в линуксе и маке. При наличии/доступности мака - можно сразу и для мака делать. Линукс прекрасно ставится и работает в VirtualBox и прочих виртуализаторах. Далее сделать поддержку сетевых фич, БД и прочего, а уже только потом переключаться на разработку для мобилок. При этом, вам надо будет организовать свой план разработки от меньшего к большему. Т.е., сначала самые простые функции делаете, а уже потом к ним добавляете что-то более сложное по мере изучения.
    Ответ написан
    5 комментариев
  • Кириллица в c++. Что с ней не так?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Как распознать кракозябры:

    Как распознаете - сможете понять из какой кодировку в какую у вас происходит трансформация и настроить всё в единой кодировке или добавить нужные опции где надо.
    Ответ написан
    Комментировать
  • Управление фокусом окна на Python/C++?

    VoidVolker
    @VoidVolker Куратор тега Windows
    Dark side eye. А у нас печеньки! А у вас?
    Ответ написан
    Комментировать
  • Как сделать эмуляцию клика мыши на python без задействования основного курсора?

    VoidVolker
    @VoidVolker Куратор тега Windows
    Dark side eye. А у нас печеньки! А у вас?
    Но вот нужно именно без взаимодействием с основным курсором.

    Только в виртуальной машине.
    Ответ написан
  • Как написать игровой движок?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Точно так же, как и любое другое приложение:
    1. Написать базовое ТЗ
    2. Подготовить список требований и ограничений
    3. Проработать детально ТЗ (ЧТЗ) с подробным описанием всех деталей
    4. Разработать верхний уровень архитектуры решения - основные модули, системы и их взаимодействие
    5. Разработать следующий уровень архитектуры вниз и вглубь - повторить до получения самых простых элементов
    6. Подготовить пошаговый план разработки проекта
    7. Реализовать проект согласно плану
    Ответ написан
    1 комментарий
  • Можно ли использовать dll в Ubuntu?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Забудьте и просто используйте винду. Нативно или в виртуалке.
    Ответ написан
    Комментировать
  • Как читать документацию?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Вам следует начать вот отсюда и далее по списку: https://roadmap.sh/cpp
    Ответ написан
    Комментировать
  • Где Decimal в C++?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    В библиотеках - там все есть. Ищете библиотеку и добавляете к своему проекту.
    Ответ написан
    8 комментариев
  • Как разумно поставить себе начало в программировании (C++ и C#)?

    VoidVolker
    @VoidVolker Куратор тега C#
    Dark side eye. А у нас печеньки! А у вас?
    Стоит ли мне двигаться дальше в изучении C++ или пока не поздно пересмотреть свои взгляды, касательно моего выбора?

    Если нравится и интересно - то да, почему нет-то? ЯП - всего лишь инструмент. Как молоток или гаечный ключ. Если умеешь пользоваться - то запросто берешь любой молоток и забиваешь гвоздь. Разонравятся плюсы или будут другие задачи, где плюсы не очень - переключайтесь на C#.

    Не поздно начинать своё обучение

    Нет, никогда не поздно.

    дайте пару советов и пожеланий, касаемо обучения

    Уже давно все есть: https://roadmap.sh/cpp

    Будут ли проблемы в трудоустройстве, если выбор останется неизменным

    В целом зависит только от вас и прикладываемых вами усилий. А так - под плюсы да, действительно вакансий не так уж много и есть некоторые сложности в их поиске, а те что есть - обычно ближе к оборудованию, робототехнике, МК и прочему. Если направление интересно - то почему нет-то? Еще отличным выбором будет C#/dotNet - сейчас он больше в сторону веба развивается, но и для десктопной разработки тоже достаточно популярен.
    Ответ написан
    1 комментарий
  • Можно ли демонстрировать или отображать программу .exe в окне своей же программы?

    VoidVolker
    @VoidVolker Куратор тега C#
    Dark side eye. А у нас печеньки! А у вас?
    И есть вообщем такая потребность, интегрировать окно Hammer Editor (Создание уровней для игр на движке Source) в проект.

    Это возможно при условии, если данное приложение предоставляет соответствующий интерфейс в виде DLL библиотеки. Смотрите документацию приложения либо его исходники, при наличии оных.
    Ответ написан
  • Зачем использовать кучу если есть стек? а так же где применяются указатели и ссылки?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Затем, что это разные вещи. RTFM: куча, стек. Указатели и ссылки применяются везде.
    Ответ написан