|
|
|
YahоО |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 198 Регистрация: 11.6.2015 Репутация: нет Всего: 1 |
Отчего так сложно в С++ написать или просто найти решение имеющейся задачи?
Оказывается причина кроется в том что С++ рекомендует и практикует разделение любой программы на части и помещать используемые ею функции в отдельные файлы. Для этого предоставлена директива #include. И вместо того чтобы помещать объявления структур в каждый файл, их размещают в заголовочном файле, а затем включают в каждый файл кода. В итоге программы разбиваются на три части: • заголовочный файл, содержащий объявления структур и прототипы функций, которые используют эти структуры; • файл исходного кода, содержащий код функций, которые работают со структурами; • файл исходного кода, содержащий код, который вызывает функции работы со структурами. Когда имя файла представлено в двойных кавычках, компилятор сначала ищет файл в текущем рабочем каталоге или в каталоге с исходным кодом (либо в другом аналогичном месте, которое зависит от версии компилятора). Не обнаружив заголовочный файл там, он ищет его в стандартном местоположении. На то он и компилятор, и пусть себе ищет. А если иерархия директорий имеет сбой, или версия то ли файла то ли компилятора не подходит, или требующийся в создаваемой программе файл элементарно отсутствует, то чтобы докопаться до причины сбоя потребуется дотошный досмотр всех цепочек. Именно поэтому никто на форуме не может представить единую программу интересующей задачи. Ведь решение то конечно есть, в том сомненья нету, но вся эта кодировщина раскидана по множественным папкам и файлам, и их количество измеряется должно быть баааальшой цифрой, и собирать и соединять все в одном никто в здравом уме и не подумает. Да впрочем и никто и никогда и даже для себя лично ничего подобного не делает, тем более ожидать развернутого ответа на форуме по данному вопросу ожидать не приходится. Вот и получается что яваскрипт в свою очередь в значительном отрыве от С++, в том что с помощью closure-compiler или просто ручками можно весьма ощутимо сократить объем написанного кода и даже только этим облегчить его восприятие за счет удаления "полезных" комментариев, избыточных пробелов, с заменой длинных имен односимвольными. И самый главный плюс яваскрипт в том что он как на ладони, не скрывается иерархиями директорий и соответствиями версий и библиотек с многотысячными файлами находящихся не в программе, а где то там, далеко в path и в папках, просто необъятного количества файликов содержащих ссылки на ссылки да заголовки со множественными мусорными комментариями. Учебники же для яваскрипт начала века действительны и применимы и по сей день. Так что свои плюсы у яваскрипт есть! А задачку решить все же можно в С++, но предварительно нужно инсталлировать одну из библиотек, например Qt, для чего естественно нужно ежемесячно платить от $255, и загрузить более 3ГБ, распаковать эту громадину, изучить еще и ее, и тогда, может быть, решение материализуется. А еще параллельно начитаться С, Delphi, Object Pascal, Turbo Pascal, Java и т.п., перешерстить массу книжек различных авторов различных годов издания о различных версиях в т.ч. и устаревших и не поддерживающихся для различных и разнообразный вариаций компиляторов, отделить зерна от плевел, вникнуть во все обертки, это ж сколько надо иметь энтузиазма, денег и времени для того чтобы наконец то увидеть как С++ контактирует с интернетом? Конечно все это интересно, но не до такой же степени! SVN74, благодарю за терпение и дачу разъяснений. Конечно вызывает уважение тот кто нашел в себе силы пройти весь этот тернистый путь и замусорил свой мозг обертками, версиями, заголовками и ссылками по коридорам директорий и инсталляций, и остался еще способен на написание чего либо интересного и не очень абстрактного. После того что удалось почитать в разных источниках по сокетам восторг от того что Embarcadero может компилировать буковки в исполняемый код растворяется как дым. Мне тут посоветовали оторваться от яваскрипта - да ни за что! )))))))))) |
|||
|
||||
SVN74 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 740 Регистрация: 5.5.2008 Где: Комсомольск на Дн епре Репутация: 11 Всего: 18 |
Если вы хотите писать для интернета, - С++ для этого подходит меньше всего. Чем ниже уровень ЯП , тем больше писанины, выше скорость, ошибки и привязка к железу более критичнее...
|
|||
|
||||
YahоО |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 198 Регистрация: 11.6.2015 Репутация: нет Всего: 1 |
ошибки и привязка к железу более критичнее... - кажется я с этим уже столкнулся, брандмауэр Защитника Windows заблокировал мое творчество
по рецепту https://docs.microsoft.com/en-us/windows/wi...-for-the-server Вот раздумываю разрешать разблокировку или повременить, несмотря на то что "скрипт" от microsoft. Наверно это означает что я на правильном пути, если то что скомпилировалось уже представляет для меня же типа угрозу, настолько все реально! Сааавсем круто С++ ! Присоединённый файл ( Кол-во скачиваний: 3 ) 22.png 130,62 Kb |
|||
|
||||
SVN74 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 740 Регистрация: 5.5.2008 Где: Комсомольск на Дн епре Репутация: 11 Всего: 18 |
Это срабатывает если запустить серверный сокет, на клиентский сокет он не реагирует...
Это защита от "шпиона", поэтому шпионы используют только клиентский сокет. Это сообщение отредактировал(а) SVN74 - 28.3.2021, 22:28 |
|||
|
||||
YahоО |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 198 Регистрация: 11.6.2015 Репутация: нет Всего: 1 |
Как то подозрительно все это, брандмауэр должен был бы реагировать на шпиЁна в виде клиента который пытается с пк что то секретное передать резиденту,
а тут получается что server на пк якобы поселился и сам становится резидентом слушающим сторонних шпиЁнов. "Это защита от "шпиона", поэтому шпионы используют только клиентский сокет" - вот на них, на клиентов и должна реагировать система, по идее, а так получается что в системе уже сидит свой шпион, и не допускает иных резидентов, при этом система не против того чтобы множественные шпионы атаковали пк. На клиентов - шпионов брандмауэр не реагирует, подозрительный абсурд. Как только "въеду" в С++ надо будет поплотнее поинтересоваться устройством окон )) хотя ожидать этого по всем признакам придется очень не скоро. Наверно из за потенциальных шпионов так сложно докопаться до кода позволяющего пк легко контактировать с интернетом. И естественно, пользуясь случаем когда не потеряна нить разговора, попытаюсь спросить - вот есть сокеты, с помощью сокет-сервера слушают входящие, а с помощью клиента входят в контакт с серверами, но ведь это чепуха какая то! Потому что имея на пк самодельный клиент невозможно контактировать с каким либо сайтом не имеющим никаких сокетов! И как тогда контактировать с сайтами? Предположим тот код что от майкрософт-клиент я скомпилирую, но этот клиент никак с сайтом майкрософта не сможет контактировать потому что там http+s но никак не ws:// (конечно же я помню Ломоносова - "Нет такого невежды, который не мог бы задать больше вопросов, чем может их разрешить самый знающий человек") |
|||
|
||||
YahоО |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 198 Регистрация: 11.6.2015 Репутация: нет Всего: 1 |
Мощный и быстрый C++ специально не умеет просто и быстро сделать то что умеет пхп в одну строку:
https://www.php.net/manual/ru/function.file-get-contents.php |
|||
|
||||
YahоО |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 198 Регистрация: 11.6.2015 Репутация: нет Всего: 1 |
Romikgy, YahоО, вам не СЛАБО ... значит катайтесь на коньках.
Чуть менее недели минуло, и что, ну нашел я то что искал, три-четыре дня утеряно потрачено на чтение умных книжек, и периодический поиск file_get_contents, и наконец то заработало, скачивает с интернета страницу, то что я и спрашивал, и то в чем Вы мне отказали в помощи. Самоделкины, на помощь от Romikgy не надейтесь! Долбите сами гранит науки )) это на поверку оказывается самый верный путь! Если конечно вам не СЛАБО. Плохо конечно что на форуме отсутствуют раздел с правильными классическими примерами того или иного яп, ссылаясь на которые можно было бы что то оперативно и без потерь времени уточнить, освежить, познакомиться, изучить, и не задавать наивные вопросы, и уже на их основе творить свои пробы. Есть много источников, например хабр, но там все новое, а где правильное и до настоящего времени актуальное и работающее находить, основы может быть, отправные точки? Оригинальный совет всем кататься на коньках не украшает форум, скорее напоминает о снобизме вездесущих завсегдатаев. |
|||
|
||||
YahоО |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 198 Регистрация: 11.6.2015 Репутация: нет Всего: 1 |
А если попробовать?
Работает? Работает! И представьте себе это настолько короткий код, что просто диву даешься отчего никто вот так просто не написал его ни в одном примере. Но тут же новый вопрос, который наверно лучше написать в новой теме, но пробую спросить здесь: Скачал curlpp-0.8.1.zip, и совершенно не представляю что с ним нужно сделать, чтобы в с++ можно было написать строку: #include <curlpp/cURLpp.hpp> и компилятор нашел бы curlpp в стандартном include. Может надо скопировать папку с curlpp-0.8.1\include\ в папку c:\Program Files (x86)\Embarcadero\Studio\20.0\include\ но оказывается тут требуются какие то права - "С админ.правами", или нужен какой то дополнительный инсталлятор папки в мамку, весь гугл протер до дыр можно сказать |
|||
|
||||
Правила форума "С++ Builder" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C++ Builder | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |