Проблема в том, что каждый раз при вызове фукции connectToHost программа завершается с SIGSEGV.
Почему вызов connectToHost приводит к таким последствиям?
Спасибо.
Не вижу вызова bind - сначала нужно связать с каким-то портом, с которого будет идти отправка пакетов. Ну, и чисто имхо, UDP всё же connection-less, connectToHost несколько искажает понимание что происходит, нужно понимать, что всё, что посылается во write может не дойти.
Требования bind является требованием Qt, скажем в C вызов bind на клиенте не требуется?
Как я могу гарантировать, что выбранный порт окажется свободен на клиенте, даже если я выберу достаточно большой номер?
По поводу ненадёжности UDP знаю - таковы требования.
С одной стороны, в Qt bind() можно вызывать без параметров, чтобы привязать к "любому адресу и порту".
С другой стороны, SIGSEGV - достаточно необычная реакция на отсутствие bind(), даже для Qt. Я сильно сомневаюсь, что проблема в этом. Проверьте, наверное, указатель socket. Не NULL ли там, или не мусор ли какой-нибудь?