3197
|
Qt / Установка, сборка, отладка, тестирование / Re: MinGW и Phonon
|
: Май 14, 2009, 09:40
|
то есть нужно сделать чистый проект для сборки бэкенда с 0? В принципе не сложно, на основе тех же кдешных хедеров, копипаст конечно явный делать не стоит, но разобраться и сделать по подобию имхо можно. Хотя чем их кедовская реализация не устраивает - совершенно неясно, мб обычная лень что-то делать?
|
|
|
3199
|
Qt / Общие вопросы / Re: Вопрос по удалению объектов
|
: Май 13, 2009, 23:07
|
В конце программы удаляются ВСЕ объекты. За это отвечает операционная система - такая уж у нее задача выделять память программам и забирать то, что выделила. Т.н. "утечки памяти" страшны во время работы программы. А вообще, у данных виджетов нет родителей, посему их нужно удалить, в смысле - до конца программы об их удалении никто не позаботится. В конце, как уже сказано выше, всё очистит ось.
|
|
|
3200
|
Программирование / С/C++ / Re: std::sort
|
: Май 12, 2009, 21:53
|
подумав, решил, что в принципе ни во что не преобразовывается, так как для чара определены ++ и операции сравнения/присваивания - то есть классу, чтобы быть итератором, не нужно специфических полей/методов
|
|
|
3204
|
Программирование / С/C++ / Re: std::sort
|
: Май 12, 2009, 19:56
|
эм template<class RandomAccessIterator> void sort( RandomAccessIterator _First, RandomAccessIterator _Last );
Я чего-то не понимаю, или нужно передавать итераторы а не указатель на чары?
|
|
|
3205
|
Qt / Общие вопросы / Re: QString в char*
|
: Май 12, 2009, 19:50
|
ага, проблема я так понял в том, что ф-ии конвертации возвращают объект, лежащий в стеке и после присвоения стек благополучно сворачивается, удаляя указатель... Кстати мой пример всё-таки не работает:)
|
|
|
3206
|
Qt / Общие вопросы / QString в char*
|
: Май 12, 2009, 18:49
|
как адекватно перевести QString в сишный массив чаров? Способов куча, но полученный массив нужно скормить функции ldap_initialize(LDAP*, char*). Проблема в том, что на экран выводится всё верно в любом из способов, а вот функции нравится только конвертация через std::string То есть такой код работает: QString str("ldap://localhost/"); const char * ldapuri = str.toStdString().c_str(); int ret = ldap_initialize(&cur_session, ldapuri);
Другие варианты (через Ascii, Latin1 и тп - нет). Как сделать без std строки?
|
|
|
3208
|
Qt / Установка, сборка, отладка, тестирование / Re: Qt MAC Static or Shared?
|
: Май 11, 2009, 14:43
|
я когда-то давно линковал шаред библиотеку (для работы с 3дсмаксовскими моделями) - всё нормально работает до сих пор. А вот сейчас пишу библиотеку, тестовое приложение жутко тупит - непонятно из-за чего оно то видит эту библу, а то нет. Временно полечил созданием симлинка в /usr/lib. А вообще, в .app не кладутся .dylib'ы Qt, фреймворки нужно таскать с собой ручками. Или делать static линковку.
|
|
|
3209
|
Qt / Общие вопросы / Re: Где писать обработчики событий (в Qt Creator)
|
: Май 10, 2009, 21:53
|
есть сигналы/слоты, есть события (QEvent). Грубо говоря сигналы/слоты используются, когда событие происходит редко - пользователь нажал кнопку, выделил фокус в строке ввода. События - когда часто - пользователь подвинул мышку, нажал кнопку на клаве. Такие вещи ловятся либо при помощи наследования и перегрузки вируальных функций (void keyPressEvent(QKeyEvent * e) либо установкой обработчика событий на экземпляр класса. Всё это описано в книжке того же Шлее. Как и твой вопрос про 2 формы - если у виджета не установлен родительский виджет, то он создается в отдельной форме, иначе - на родителе. Побочным эффектом setMainWidget() как раз является установка родителя. а да, видел такой баг у друга в висте... причем сам не видел ни на ХР (3 системы), ни на 2008 сервере
|
|
|
|
|