Здравствуйте, гость ( Вход | Регистрация )
Алексей1153 | Дата 15.8.2010, 20:23 |
RazrFalcon, нууу, крайне неверная позиция Дело в том, что классы, структуры (да и указатели) - не методы, это основы языка C++ Если ты пишешь на этом языке программы - ты просто обязан хорошо знать эти вещи. |
|
RazrFalcon | Дата 15.8.2010, 20:00 |
Расскажи, что именно понятно Понятно ровно столько - сколько нужно. Не люблю уж сильно вникать, хотя может это и проблема. Просто пользуюсь теми методами которые устраивают. Никогда к примеру указателями и структурами не пользовался, не по мне, ищю другие варианты, да и классы не люблю. По крайней мере пока устраивает. |
|
Алексей1153 | Дата 15.8.2010, 19:49 |
Расскажи, что именно понятно | |
RazrFalcon | Дата 15.8.2010, 19:45 |
Срочно читать что-нибудь вроде "C++ для начинающих" - раздел про указатели! Все понятно-понятно |
|
Алексей1153 | Дата 15.8.2010, 19:41 |
То есть количество пиров становится 0 Срочно читать что-нибудь вроде "C++ для начинающих" - раздел про указатели! |
|
RazrFalcon | Дата 15.8.2010, 19:36 |
обнуляет указатель m_pPeer__. Странный вопрос... То есть количество пиров становится 0, отключаем клиентов как я понял. Я имел ввиду логику выражения, то что обнуляем я понял, не понял что.Цитата так я сделал передачу строки - не нашёл что ли ? Ну строку то я нашел, но думал она строго на текст, теперь разобрался.Еще раз спасибо, буду прикручивать сюда что хотел, потом выложу готовый вариант. |
|
Алексей1153 | Дата 15.8.2010, 18:41 |
включение слушалки когда сокет-сервер создаётся, он инертен, сам по себе он ничего ещё не делает. Когда вызывается listen() , сервер начинает слушать входящие запросы на соединение от клиентов. Причём, обратной дороги нет - он будет слушать до талого снега! Если только не пересоздать хендл сокета в системе (по крайней мере так в винде). В студии я делал это через close()/create() сокета сервера, а в Qt это не прокатит, как так пАрные сокеты убьются. Тут, наверное, достаточно вызвать setMaxPendingConnections(0) для отключения слушалки совсем. Хотя, не проверял, что при этом произойдёт )) delete m_pServer; - такую запись никогда не встречал. это всего лишь оператор C++ , возвращает в кучу память, выделенную под объект оператором new. В библиотеке Qt есть расслабуха - если класс произведён от QObject и имеет родителя, то delete автоматом вызывается для объекта. Но иногда удалить объект надо не затрагивая родитель. if(!m_pServer)return; - на что проверка?! булево выражение (!X) эквивалентно (X==0) m_pPeer__=0; - что это делает обнуляет указатель m_pPeer__. Странный вопрос... я так понял читает только 100 байт? И это только текст. производится попытка чтения из приёмного буфера сокета максимум 100 байтов за раз - да Это количество зависит от задачи, для данного примера сойдёт и константа 100 )) ну и последние, передачу файлов еще ты не писал, по крайней мере я не нашел. так я сделал передачу строки - не нашёл что ли ? А строка - это набор байтов. А файл тоже. Но большие объёмы данных могут потребовать спец-приёмов при передаче - это когда столкнёшься, сам увидишь, пока передавай всё разом ) Как потоковое видео приделать, я не знаю, но суть такая же - передаётся часть видеопотока, потом эта часть проигрывается, а в это время качается очередная часть |
|
RazrFalcon | Дата 15.8.2010, 17:27 |
С классами то разобрался ? Ну в общем то понятно. Пару вопросов разве что: 1) "включение слушалки" - это что? Проверяем на наличие клиентов? 2) delete m_pServer; - такую запись никогда не встречал. 3) if(!m_pServer)return; - на что проверка?! 4) m_pPeer__=0; - что это делает? 5) я так понял читает только 100 байт? И это только текст. 6) ну и последние, передачу файлов еще ты не писал, по крайней мере я не нашел. Огромное спасибо, буду разбираться дальше. Интересно б присобачить потоковое видео через openCV еще. Но это уже больше к передаче файлов. |
|
Алексей1153 | Дата 15.8.2010, 16:09 |
RazrFalcon, это креатор при создании вписал, я вручную только network добавил ) Стёр opengl - тоже компилится и работает ) С классами то разобрался ? |
|
RazrFalcon | Дата 15.8.2010, 16:03 |
Алексей1153, я имел ввиду зачем тебе opengl вообще, ты же его не используешь, а решается все просто стиранием его и все пашит. Просто у меня OGRE движок тоже вечно кричит что нет ligOGL.so.2.0 (при том что он есть) что то в этом духе, вот я и думаю что же я с opengl натворил. |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 19.4.2024, 14:21 |