Ответы пользователя по тегу Программирование
  • На каком языке-фреймворке легче написать кроссплатформенное gui-приложение?

    EXL
    @EXL
    Энтузиаст
    Qt можно статически собрать и получить один исполняемый файл размером 3-7 МБ в зависимости от сложности приложения. По-крайней мере с Qt4 было именно так. Увы, но Qt5 потянул за собой жирную libicu весом в 36 МБ (что больше чем весь Qt).

    А в сторону GTK+/wxWidgets вы не смотрели?
    Ответ написан
    Комментировать
  • Как объединить строки и присвоить значение переменной в классе?

    EXL
    @EXL
    Энтузиаст
    Простите, а в чём проблема? В зависимости от ситуации можете использовать как С++-подход:
    Tampler()
    {
            std::string str(GetCurrentDir());
            str = str + filename + TLDR_EXT;
            m_sMyString = strdup(str.c_str());
    }
    Так и C-подход:
    Tampler()
    {
            char *tempstr = (char *)malloc(strlen(GetCurrentDir()) + strlen(filename) + strlen(TLDR_EXT) + 1);
            strcpy(tempstr, GetCurrentDir());
            strcat(tempstr, filename);
            strcat(tempstr, TLDR_EXT);
            m_sMyString = tempstr;
    }

    Если я, конечно, правильно вас понял.
    Ответ написан
  • Как в QT отследить бездействие пользователя?

    EXL
    @EXL
    Энтузиаст
    Для Qt есть дополнительная библиотека - Qxt, в тестах есть приложение, демонстрирующее как раз то, что вам нужно: в заголовок окна выводится время простоя, когда юзер двинет мышкой или нажмет клавишу или совершит ещё какое-либо действие - счетчик сбрасывается.

    1T5jlEf.gif

    Можете использовать Qxt в своём проекте (доступны версии под Mac OS, Win и Linux), или выдернуть реализацию функции idleTime() для различных систем:
    Win, X11 (GNU/Linux), Mac OS.

    Скачать Qxt можно здесь.
    Ответ написан
    4 комментария
  • Где найти полный мануал по Git?

    EXL
    @EXL
    Энтузиаст
    Github != git.
    Рекомендую книгу Scott'а Chacon'а - Pro Git.
    Ответ написан
    Комментировать
  • Как программе удалить саму себя?

    EXL
    @EXL
    Энтузиаст
    Для распространения своей утилиты под различными операционными системами вы можете воспользоваться кросс-платформенным установщиком Qt Installer Framework 1.5.0. Если мне не изменяет память - возможность удаления программы там присутствует. А вообще лучше всего сделать так:
    Для Windows - установщик, который создает в меню "Пуск" ярлык на "unist.exe", удаляющий программу.
    Для Linux - deb-пакет/tar.gz-пакет. Функция удаления линуксоидам не нужна, эту задачу решит пакетный менеджер, против которого ставить софт не рекомендуется.
    Насчет Mac OS/OS X не знаю, но думаю там есть возможность удаления установленного приложения из каталога установленных программ.

    Делать внутри программы функцию удаления этой программы - весьма плохой тон.
    Ответ написан
    Комментировать
  • Подключение OGRE3D к QT

    EXL
    @EXL
    Энтузиаст
    Недостаточно информации.
    Вы хотите использовать контекст Ogre3D в Qt-приложении? Или же вы хотите просто использовать интегрированную среду разработки Qt Creator для написания программ с помощью Ogre3D SDK и без какого-либо использования самого Qt?

    Насчет crash'а - скорее всего у библиотек из Ogre3D SDK, которые вы скачали, и объектников вашего приложения разный ABI, отсюда и падение. Например, библиотеки Ogre3D SDK собраны с помощью MinGW 4.6.2, а у вы компилируете программу компилятором, идущим с Qt 5.3.0, то есть с помощью MinGW-w64 4.8.2. При линковке никаких предупреждений не будет, но программа не запустится.
    Ответ написан
  • MinGW или MSVC: какой компилятор выбрать для приложений на Qt под Windows?

    EXL
    @EXL
    Энтузиаст
    Я за MinGW, хотя бы потому, что он использует собственный Runtime, работающий на ВСЕХ MS Windows OS, начиная с Win95. В случае с Qt - начиная с 2000/XP. Без всяких установок Visual C++ Redistributable/Visual C++ Runtime и дополнительных библиотек. Просто добавляем в проектный файл такие строки: QMAKE_LFLAGS +=-static-libgcc -static-libstdc++
    Ответ написан
    7 комментариев
  • Какие существуют хорошие библиотеки для работы со звуков в VS С++?

    EXL
    @EXL
    Энтузиаст
    Посоветую кросс-платформенный SDL, и его расширение - SDL_mixer.
    Ответ написан
    Комментировать
  • Как посмотреть машинный код?

    EXL
    @EXL
    Энтузиаст
    Любой хексовый редактор поможет вам увидеть изображение так, как оно представлено в памяти компьютера.
    хочу по программировать на машинном коде

    Никто не программирует "на машинном коде". Максимум - патчи. Машинный код разделяют на данные и, непосредственно код, который дизассемблируют (переводят на более высокий уровень абстракции).
    Ответ написан
  • Python s60 v2.00: каковы перспективы?

    EXL
    @EXL
    Энтузиаст
    Только если для себя. Перспектив у S60 уже давно нет.
    Если интересна подобная некрофилия, можете ещё посмотреть в сторону Qt SDK для S60 от Nokia. Очень приятный фреймворк.
    Ответ написан
    Комментировать