
Ilya
20.06.2016
11:58:21

Денис
20.06.2016
11:58:52
читал?

Ilya
20.06.2016
11:59:03
Но я начинал с кнута

Google

Денис
20.06.2016
11:59:36
осилил кнута?

KrivdaTheTriewe
20.06.2016
11:59:46
Никто не осилил

Ilya
20.06.2016
12:01:06

Эдуард
20.06.2016
12:02:05
У нас есть один кадр, который считает, что использование старых подходов это нормально. goto в С++ коде не редкость, методы/функции на пару тысяч строк кода - тоже.

Ilya
20.06.2016
12:05:50

Эдуард
20.06.2016
12:06:08
40+

KrivdaTheTriewe
20.06.2016
12:16:49

Andrey
20.06.2016
12:17:23

Sebastian
20.06.2016
13:03:09

Эдуард
20.06.2016
13:09:27


Evgeniy
20.06.2016
13:11:14
Никто не сталкивался с такой проблемой в Qt?
Есть класс, который посылает сигналы
void TabController::loadFiletoTab(const QString &file)
{
...
emit tabStateChanged();
std::thread thr(&ScreenImage::loadImage, wdg,
std::move(img), std::move(file));
thr.detach();
}
и есть главное окно, которое эти сигналы обарабывает.
connect(_pTabController, SIGNAL(tabStateChanged()),
this, SLOT(checkTabState()));
Если убрать
std::thread
, то главное окно обрабатывает сигнал корректно иначе оно никак на него не реагирует. Как заставить главное окно обрабатывать сигналы и оставить
std::thread
?

Sebastian
20.06.2016
13:12:11
а почему не кутреды?

Google

Evgeniy
20.06.2016
13:13:28
я не понял, как в qthread заставить выполнять только один метод, без создания экземпляра класса

dmks
20.06.2016
13:13:49
Qt Concurrent?

Sebastian
20.06.2016
13:14:24
да, в конкаррент есть такая возможность

dmks
20.06.2016
13:15:25
Возможно, если поменять тип соединения что то получится

Sebastian
20.06.2016
13:16:03
тип соединения автоматом выбирается. Наверное нативные треды не может обработать, хз

Evgeniy
20.06.2016
13:17:03

Эдуард
20.06.2016
13:24:25

Sebastian
20.06.2016
13:26:56
Ну да, тут явно дело в человеке, а не в гоуту) Гоуту просто инструмент, его можно применять правильно, можно не правильно. Как множественное наследование. Как лямбды.
Да вообще как все)

Эдуард
20.06.2016
13:28:47
Ну это понятно) просто с гоуту очень просто перегнуть планку на ровном месте.

Sebastian
20.06.2016
13:38:41
да, поалуй так
но в плюсах надо постоянно быть на стреме)
инструментов и способов их использовать неправильно много

Procrastinator
20.06.2016
13:42:26
Я его использовал (goto) когда писал консольную программу на С для управления текстовыми файлами с простым содержимим. С ним было очень удобно делать текстовую менюшку, когда у тебя свич в свиче в свиче

Alex Фэils?︙
20.06.2016
13:43:56

Suigintou45
20.06.2016
14:32:10

Mr.
20.06.2016
16:04:45
Goto хорошо использовать в тех случаях когда надо преждевременно выйти из функции и освободить ресурсы

Денис
20.06.2016
16:11:50
умные указатели, не?

Google

Sebastian
20.06.2016
16:28:42
иногда такой оверхед непростителен же)

Mr.
20.06.2016
16:28:43
В WINAPI?

Alex Фэils?︙
20.06.2016
19:27:42
Привет, друзья! Располагайтесь, прочтите правила и задавайте свои вопросы)

execute
20.06.2016
19:38:20
Всем доброго времени суток. Подскажите, как пользоваться QNetworkManager. Я пытался скомпилить самый простой пример из документации, но безуспешно(ошибки на скрине)
Вот код программы
#include <QCoreApplication>
#include <QNetworkAccessManager>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
QObject::connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://qt-project.org")));
return a.exec();
}

Alex Фэils?︙
20.06.2016
19:39:12

execute
20.06.2016
19:39:34
Сейчас попробую

Evgeniy
20.06.2016
19:41:02
И не в методах класса this нет. То есть в мейне не может быть this

execute
20.06.2016
19:41:29
3 и 4 ошибки исчезли, но остальное так и осталось

Alex Фэils?︙
20.06.2016
19:42:05
Ты вызываешь коннект
Который нестатический

Alex Фэils?︙
20.06.2016
19:46:32
Тебе надо вызывать метод connect из менеджера: manager->connect
Алсо в Qt есть макрос CONNECT
Можно еще QObject::connect на этот макрос заменить

execute
20.06.2016
19:50:39
Спасибо, мне казалось, что дело может быть в первоначальной настройке среды, так как этот код взят из офф. документации к QT. Пошел курить маны.

Emergency
20.06.2016
19:51:02
О, тут про Qt

execute
20.06.2016
19:51:25
Ну qt же либа
с c++ тоже связано
)

Google

Emergency
20.06.2016
19:52:12
Я очень люблю Qt ?

Denis
20.06.2016
19:53:31
Кто разбирается в лицензиях, скажите пожалуйста, нужно точно знать, OpenSource лицензия LGPL на Qt позволяет разрабатывать коммерческие (продаваемые разработчиком за деньги конечным пользователям) программы, которые динамически линкуются с библиотеками Qt (теми, которые, естесственно, поддерживают LGPL), именно при условии, что разработчик перекомпилирует необходимые модули с особыми параметрами (с целью уменьшения размера dll-библиотек Qt)?

Emergency
20.06.2016
19:54:14
Если со стандартной библиотекой Qt совместимость останется - да, вроде

Admin
ERROR: S client not available

Emergency
20.06.2016
19:54:35
Если совместимость пропадёт и приложение запускаться не захочет - нет

Gregory
20.06.2016
19:55:02
Господа можно я немного оффтопа вкину?
Господа, чтоб в php запользовать функцию mail() на сервере нужен какой-нить mta, или интерпретатор сам сможет отправить почту?? Питон сам может, а в похапе как? У меня просто чувак спросил, а я хз что ответить

Evgeniy
20.06.2016
19:55:41

Denis
20.06.2016
19:55:53

Andrei
20.06.2016
19:58:15
А я не люблю кьюти
И отправил бы кьютистов в другой чат.
Потому как это фактически другой язык.
С другими конструкциями и другой стандартной библиотекой.

Denis
20.06.2016
19:59:11

Andrei
20.06.2016
20:00:16
Компилятор мета-объектников никуда не делся.

Stanislav
20.06.2016
20:01:04

Andrei
20.06.2016
20:01:28
Окей. Но это все равно сажать себя на иглу.

Evgeniy
20.06.2016
20:01:37
@obsqrbtz добавть
QT += network
в pro файл

execute
20.06.2016
20:01:40
До этого еще не дошло, этот код тестовый(просто хотел научиться отправлять запросы, не сохраняя никуда ответов), а вообще собираюсь написать простой мессенджер для вк с гуем и консольным интерфейсом.
этот код для гуевого чего то по идее. кто должен обработать полученный сигнал?

Google

Andrei
20.06.2016
20:01:52
Это большая зависимость которая из плюсов делает не плюсы.

execute
20.06.2016
20:01:58
добавил уже давно

Evgeniy
20.06.2016
20:02:29
у меня так для консольного приложения
QT += core network
QT -= gui
#include <QCoreApplication>
#include <QtNetwork/QNetworkAccessManager>
#include <QtNetwork/QNetworkRequest>
#include <QUrl>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QNetworkAccessManager *manager = new QNetworkAccessManager();
// QObject::connect(manager, SIGNAL(finished(QNetworkReply*)),
// this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://qt-project.org")));
return a.exec();
}
вот так все компилируется

Stanislav
20.06.2016
20:04:47

execute
20.06.2016
20:05:08
А сигнал/слот значит только для гуя нужен?

Evgeniy
20.06.2016
20:05:51
Нет, туда можно объект производный от QObject засовывать.
Просто я не знаю, что ты имел ввиду под this

Stanislav
20.06.2016
20:06:40
может все же стоит использовать новый синтаксис сигнал слотов?

Emergency
20.06.2016
20:07:11
Qt это классно

Evgeniy
20.06.2016
20:07:14

execute
20.06.2016
20:07:36
Я, если честно тоже не знаю, нашел пример, и заюзал, толком не разобравшись. Нужно было с манами получше ознакомитьс. В общем поспешишь - людей насмешишь.

Andrei
20.06.2016
20:07:54
Омг. Набег кьютистов.

execute
20.06.2016
20:08:06
Ужс

Procrastinator
20.06.2016
20:08:07
Qt это классно
Я вот сейчас в нем курсач пилю. Правда уже немного соскучился по консольнім приложухам на С :^(