• Как расположить элементы из ListModel(QML) в строго определенных местах?

    @xseven
    Умение формулировать вопрос эт оуже 70% успеха и возрастание вероятности получить ответ почти до единцы.

    Данный вопрос выглядит как: "что вы больше меньше всего любите потому что за позавчера?"

    В общем виде если модель не отображается напрямую однозначно (разное количество элементов, какие-то особые критерии отображения и т.д.), то желательно использовать одну из моделей прослоек (QIdentityProxyModel, QSortingProxyModel и т.д.)

    Если вы сформулируете ваш вопрос более конкретно, то будет легче ответить предметно.
    Ответ написан
    3 комментария
  • Где скачать хороший учебник по математике?

    @xseven
    В принципе по большей части все известные классические учебники/задачники привели.

    Сканави, Выгодский - советская классика. Хотя, Сканави, на мой взгляд, все-таки стал немного простоват. Без понятия что сейчас с введением ЕГЭ и какие задания, но за несколько лет до его введения, все темы и различные задачи (задачи с параметром, метод мажорант, теорема Безу и т.д.) он не охватывал плюс перед ЕГЭ у многих сильных ВУЗов сложились сосбственные задачи которые можно было решить быстро только видя их до этого, т.е. как правило посещая конкретные подготовительные курсы или имея литературу с этих курсов.

    Плюс нарабатывайте алгоритмистику решений (например начинать всегда независимо от кажущейся простоты с нахождения ОДЗ и области решений, ужимание/не ужимание области решений при делении на многочлен и т.д.)

    К тому же журнал Квант действительно хорош и выпускается до сих пор в структурах аффилированных МФТИ насколько я помню.

    Из менее известных:
    Есть хороший учебник Шабунина (МФТИ), т.к. переиздание довольно новое сам автор еще жив, то материал вполне свеж и хорошо вставляет мозги на место.

    Очень хорошая книга название если не изменяет память "В поисках решения" советская книга является сборником небольших математических этюдов для школьников. К сожалению более конкретно ни год издания ни автора припомнить не могу.

    Числа и Фигуры Радемахера - довольно интересный труд вполн епо силам для 10-11 класса школы во всяком случае ознакомиться. По сути сброник этюдов если будет интерес, то окажется полезным.

    Cтоит читать историю математики и возникновение и уточнение концепций и прочее? так как часто помогает понять почему первоначальные концепции сейчас выглядат так, а не иначе, и какова основная идея. Так как за современным формальным языком математики не всегд алегко уловить, что же лежало в основе теории или идеи.
    Ответ написан
    Комментировать
  • Алгоритм для транспортной задачи?

    @xseven
    Если я правильно помню, то данная задачу относится к задачам линейного программирования (вроде поддкласс теории оптимизации, но могу путать).

    Скорее всего подобная задача будет решаться чем-то похожим на симплекс метод
    Ответ написан
    Комментировать
  • Кто занимался информационной безопасностью?

    @xseven
    На данный момент ничего сказать нельзя так как вы ничего конкретного не пояснили.

    Одно из популярных направлений разработка систем защищенных соединений для передачи данных например на основе vpn.
    Создание ГСЧ на основе биологических данных.
    Может быть создание "песочниц" для безопасного запуска приложений и т.д.
    В общем код пишется и его хватает в РФ.
    В связи с этим удивлен предыдущим ответом.

    По теме, автор сначала рзаберитесь, что будет входить в круг ваших обязанностей.
    Ответ написан
  • Есть ли рускоязычная среда програмирования?

    @xseven
    Прямо все накинулись на русский язык. Помню в школе алгоритмы заставляли писать как раз по-русски и не было никаких проблем. Более того в сборниках алгоритмов часто псевдокод пишется по-русски.
    В иснтитуте был РАЯ (русский алгоритмический язык) что-то вроде этого ссылка.

    Кстати сами англоговорящие используют язык И-штрих (E') в некоторых областях например в адвокатуре и т.д. Таким образом применение родному языку всегда можно найти было бы желание.

    В промышленности английский язык на данный момент является доминирующим языком во многих сферах в силу причин мало зависящих от языка. Т.е. если вы хотите профессионально заниматься программированием, то знание одного из языков крупных технических сообществ помимо русского (китайский, испанский, английский, французский, немецкий) сильно облегчит жизнь, плюс разносторонее развитие тоже полезно.
    Либо работать в сфере национальных систем и поставщиков решений пресловутый 1С и т.д.
    Ответ написан
    1 комментарий
  • Возможно ли объявить двумерный массив на unique_ptr?

    @xseven
    Возможно все и возможности программиста ограничиваются только фантазией.

    Не сочтите за личный выпад.

    Когда возникают подобные задачи стоит задуматься а все ли в порядке с архитектурой и можно ли написать проще?
    Мне кажется такой будет тяжело поддерживать и, судя по всему, вы используете Qt и не очень понятно где там может пригодиться хранение двумерного массива указателей?

    Возможно стоит рассмотреть проблему под другим углом и сделать проще?
    Ответ написан
  • Какую кроссплатфоменную библиотеку для работы с сокетами на с++ вы используйте?

    @xseven
    Можно воспользоваться ZeroMQ
    Ответ написан
    Комментировать
  • Есть ли перспективы у десктоп-ориентированного софта и фреймворков для его разработки (Qt, например)?

    @xseven
    Все в порядке с разработкой программ под настольные системы. То что многие оттягиваются писать свистки для телефонов или паутины, говорит лишь об их возросшей популярности, а вовсе не об упадке дел в разработке для настольных систем.
    Плюс рынок наукоемких приложений вполне себе растет, да много можно напридумывать. Но наверное какие-то простые приложения для развлечений - да будут переходить на мобильные устройства.
    Ответ написан
    Комментировать
  • Как в Qt скрыть виджет верхнего уровня, но чтобы при этом вложенный виджет (нижнего уровня) отображался?

    @xseven
    Судя по всему, не помешало бы добавить layout чтобы растянуть ваш дочерний виджет внутри родительского.

    В конструкторе родительского виджета можно добавить:
    setAttribute(Qt::WA_TranslucentBackground);

    Должно помочь.
    Ответ написан
    Комментировать
  • Как отследить завершение редактирования в ячейке таблицы?

    @xseven
    При редактировании вызывается из делегата createEditor (создается поле для редактирования), setEditorData(назначаем значение полю для редактирования) , setModelData(редактирование окончено сохраняем занчение в модель). Эти функции стоит переопределить

    Почитать можно тут
    Ответ написан
    Комментировать
  • Какой метод указывает QWidget не исчезать после отображения методом show() ?

    @xseven
    Вы создаете немодальный диалог вызывая show()
    Если я правильно понял, то:
    Попробуйте вызвать exec() вместо show(), тогда окно станет модальным и не закроется пока вы не завершите необходимые действия в нем.
    Ответ написан
    Комментировать
  • Qt: QAbstractItemModel работает медленно, если я бросаю сигнал layoutChanged(). В чем проблема?

    @xseven
    Сложно сказать, что работает медленно не видя всего кода.
    Для начала я бы посоветовал пройтись профилировщиком + дать ссылку на код если возможно.

    Вообще несколько странный подход на мой взгляд.
    Почему не используется removeRows/removeColumns и их антагонисты insert?
    Если так хочется removeById почему не вывести это в виде адаптора?
    Несколько проще на мой взгляд по максимуму использовать возможности интерфейса стандартной модели.
    Плюс как вычисляется индекс и где сигналы dataChanged? Вы видимо поэтому используете посылку сигналов для layout. Т.к. без посылки dataChanged не стоит надеяться на правильное отображение или выделение.
    Ответ написан
  • Как переместить окно Qt с FramelessWindowHint?

    @xseven
    Типовой вроде вопрос:
    qt-project.org/forums/viewthread/34935
    Ответ написан
    Комментировать
  • Как выбрать любое из массива QStringList, удовлетворяющее условиям?

    @xseven
    for и т.д. - не самая лучшая практика, попробуйте использовать стандартную функцию mtowns.filter(QRegEx("ваш образец для поиска"))
    qt-project.org/doc/qt-5/qstringlist.html#filter-2
    Ответ написан
  • QT Table Layout - его нету, как имитировать?

    @xseven
    Вы заставляете старого самурая браться за меч
    Накидал вот по быстрому git
    Маджонг и гейш можно добавить по желанию.
    Основная идея понятна - поле 4х4. Клетка со значением 0 пустая т.е. та которую можно двигать
    @dplsoft - я думаю можно глянуть и вопросы по поводу расширяемости отпадут. Кстати забыл, что игра называется пятнашки :)
    @ZzZero - совсем не костыль. в 80% случаев надо стараться использовать MVC для отображения данных и т.д.
    @tugo - Вы были правы, альтернативный подход QML для таких целей
    Ответ написан
    Комментировать
  • Как посчитать количество сравниваний и перемещений элементов в алгоритме быстрой сортировки?

    @xseven
    Аналитически считается сложность/скорость роста. Ясно что в общем случае для алгоритма сравнениями не может быть быстрее, чем nlogn
    Чтобы посчитать более корректно нужно перегрузить операторы присваивания сравнения и т.д. и встроить в них счетчик по типу этого

    Хотя @xandox был прав - зачем?
    Ответ написан
    Комментировать
  • QT Table Layout - его нету, как имитировать?

    @xseven
    Вообще более продвинутый подход будет:
    Использовать QTableView
    Переопределить делегат
    Модельку

    И обрабатывать события и т.д.
    Но желательно описать задачу более подробно

    А в общем случае
    правильно понимаете что нужен QGridLayout )
    Ответ написан
  • Возможно ли реализовать такое на QTreeView и QStandardItemModel?

    @xseven
    Можно сделать почти все из желаемого

    Нужно унаследоваться от QStyledItemDelegate

    1. Размер ячейки (максимально желаемый) выдается от делегата с помозью метода sizeHint
    При работе с ним есть какие-то тонкости, но если добавить метасвойства к данным то можно менять размеры (но в разумных пределах)
    2. Выделение нужно смотреть в методе делегата paint
    Например я сделал так
    void myClass::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
    {
    ...
    //[In case of selection override colour to selection color except mean row]
        if(QStyle::State_Selected & option.state)
        {
            QColor selectedColor = QApplication::palette().color(QPalette::Highlight);
            cellBrush = QBrush(selectedColor);
        }
    
        //[Fill background]
        painter->fillRect(itemRect, cellBrush);
    }


    Ну и т.д

    Желательно прочесть:
    qt-project.org/doc/qt-4.8/model-view-programming.html
    Ответ написан
    Комментировать
  • Как осуществить чтение больших файлов на QT?

    @xseven
    Смущает сама постановка задачи.

    В Qt нет никаких возможностей для работы с большими файлами (если не ошибаюсь были обертки над mmap для *nix и аналогом для Win)

    В общем случае вам надо отобразить большой файл в память для чтения
    Отобразить файл для записи
    Читать и писать из источника в приемник
    Подход вполне жизнеспособен (существуют альтернативы)

    Можно посмотреть в сторону HDF5
    Ответ написан
    Комментировать