Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

C++ + Помощь

С этим тегом используют

Программирование IT IT юмор Программист Python Картинка с текстом Без рейтинга Кот В добрые руки Москва Сила Пикабу Лига Добра Вопрос Все
63 поста сначала свежее
3
ultrabeat
ultrabeat
1 год назад

Помогите выбрать литературу по С++⁠⁠

Здравствуйте, я абсолютный ноль в с/с#/с++, маломальски понимаю питон и 1с, но на этом всё.
Хотелось бы изучить с++, помогите выбрать литературу для новичка.
ММне где-то в коментах на пикабу порекомендовали данную книгу:

Помогите выбрать литературу по С++ Программирование, C++, Помощь

Стоит ли её покупать и читать? Или есть литература получше..?
ps. не надо писать, что с++ это сложный язык для новичков, я прекрасно понимаю, что питон это азбука, а с++ это Сильмариллион

Показать полностью 1
[моё] Программирование C++ Помощь
21
6
IzopZedoren
1 год назад
Лига программистов

Лучшая практика для создания сервера - корутины или poll / select⁠⁠

Добрый день, коллеги.

Возможно, вы уже видели данный пост уже есть на stackoverflow .ru, но та площадка плохо подходит для активного обсуждения, если оно завяжется.

Некоторое время писал разное прикладное клиент-серверное ПО на C++ по линуксовые ОС. Моя обычная практика (в общих чертах):

  1. создать "серверный" сокет для приема входящих подключений

  2. тем или иным образом "отметить" его как "серверный"

  3. написать фрагмент кода/функцию приема входящих подключений (1)

  4. написать фрагмент кода/функцию обслуживающий принятые подключения (клиентов) (2)

  5. написать фрагмент кода/функцию обслуживающий таймаут ожидания (3)

  6. завести массив / вектор для файл-дескрипторов

  7. запустить select / poll для этого массива

  8. при наступлении какого либо события (1),(2) или (3) - дернуть соответствующую функцию.

В принципе, для не сильно нагруженных приложений всегда хватало такого подхода. Корутины C++ для этого не использовал в основном потому, что они в этом языке неудобные (мнение субъективное). Однако прочитал я про замечательные примеры корутин в Go и, соответственно, примеры реализации клиент-серверных приложений на этих корутинах (ибо там они очень удобно выглядят). Как я понял, в общих чертах подход следующий:

  1. создать "серверный" сокет для приема входящих подключений

  2. написать функцию-корутину приема входящих подключений (1)

  3. написать функцию-корутину обслуживающую принятые подключения (клиентов) (2)

  4. на каждого из принятых клиентов заводить "свою" корутину

  5. корутины "сами дергаются" при наступлении события

Данный подход я практически полностью переписал с примера "кричащий сервер на go", как я его увидел и понял. В данном случае вообще не важно что там под капотом, особенно если смотреть с верхнего уровня.

Пытаюсь для себя вывести соображения, какой подход лучше и почему. Первый подход, кажется, более платформозависимым, в отличие от второго. При первом подходе мне проще отслеживать состояние сокета: готовность на чтение, запись (иногда полезно знать, что сокет именно готов), отключение корреспондирующей стороны. На первый подход хорошо ложится "машина состояний".

Со вторым подходом я знаком сильно хуже, но все же. Второй подход условно более расширяемый, в том плане, что в корутины закатать можно и какие-то другие операции. Пожалуй, асинхронно удобнее писать в сокет большие объемы данных. Большего придумать не сумел.

Предлагаю высказать свои соображения по этому поводу или собственный опыт.

Предлагаю не переходить к вечному спору "какой язык круче", а обсудить какой подход выгоднее и продуктивнее.

Считается, что корутины это не альтернатива поллингу, но в достаточном количестве примеров выглядит как буд-то это так.

Если у вас есть собственный опыт написания серверов на классическом юниксовом поллинге, корутинах или горутинах (если так принципиально), то прошу поделиться соображениями почему именно так и какие преимущества дает. Я за конструктивное обсуждение)

Показать полностью
[моё] C++ Сети Программирование Обсуждение Разработка Проблема Помощь Текст
4
Humboldt
Humboldt
2 года назад
Лига программистов C/C++

Прошу помощи⁠⁠

Здравствуйте уважаемые пикабушники, я разрабатываю приложение авиакомпании с базой данных POSTGRESQL на языке C++ фреймворк QT. В приложении есть админская часть и пользовательская. В админской части как раз таки возникла проблема. В админской части мы можем создавать, обновлять, удалять рейсы, самолеты, маршруты и т.д. В начале данные вносились в tableView напрямую, но потом от такой реализации было решено отказаться. Теперь данные должны вносится через формы ввода. Мне необходимо, чтобы данные из при нажатии на tableView переносились в форму ввода. С обычными значениями проблем нет, но с данными, которые ссылаются на объект из другой таблицы возникают проблемы. Данные передающиеся по foreign key при клике на tableView должны передаваться на ComboBox в форме ввода данных. Частично у меня получилось это реализовать, но при первом заходе в таблицу, содержащую foreign key у меня не передаются данные в comboBox (при клике на таблицу все работает корректно) (эта проблема отражена на гифке). В данных формах ввода я проверяю введенные в них данные, если значения корректные, то они отправляются в БД. Полагаю, что при решении первой проблемы у меня может возникнуть проблема с отправкой данных из comboBox формы в БД и tableView (с этим тоже хотелось бы разобраться). Данной работе в БД вносятся изменения в 5 таблицах (аэропорты, рейсы, самолеты, маршруты, вариант билета). Буду очень признателен, если хотя в одной из таблиц удаться решить описанные мною проблемы.

гифка и файлы необходимые для запуска проекта.

Заранее спасибо! Верю в силу Пикабу!

https://disk.yandex.ru/d/SolJbQT5-32vGw

Прошу помощи Программирование, C++, Помощь, Без рейтинга, Проблема, Сила Пикабу, Гифка
Показать полностью 1
Программирование C++ Помощь Без рейтинга Проблема Сила Пикабу Гифка
14
user5048765
2 года назад

Скиньте шаблон для курсовой работы в Латехе(LaTeX)⁠⁠

Всем привет, скиньте пожалуйста шаблон для курсовой работы в LaTeX
очень срочно, буду признателен)

Скиньте шаблон для курсовой работы в Латехе(LaTeX) Python, Программирование, IT, Google, Linux, Программист, Windows, LaTeX ПО, Курсовая, Помощь, C++, Без рейтинга
[моё] Python Программирование IT Google Linux Программист Windows LaTeX ПО Курсовая Помощь C++ Без рейтинга
2
DELETED
2 года назад

Задачи на С, прошу помощи!⁠⁠

Код красный.
Весь первый семестр пробегал по больничкам и комиссариатам из-за военкомата, почти полностью пропустил программирование на С. Сегодня наконец-то пришёл на пары, а не сказали сдать это завтра, иначе не допустят до сессии. Помогите, Бога ради! Никогда С-подобные языки не изучал.
В первом, 2-ом, 3-ем и 6-ом реализовать ввод переменных с клавиатуры.

В 4-ом, 5-ом и 7-ом массивы/матрицы/структуры заполнить любыми/случайными значениями.
Желательно, чтобы код был МАКСИМАЛЬНО дилетантским и простым, первый курс как-никак).
За всех, кто помог, поставлю свечку.
Заранее спасибо!

C++ Программирование Помощь Текст
8
18
billibobo
billibobo
2 года назад
Лига программистов C/C++

Выбор курса⁠⁠

Доброго времени суток. Ситуация такая: я студент 3-го курса вечернего обучения направления ИСИТ. И дело в том, что я о С++ знаю толком ничего. Самые основы, например, циклы for, if/else, switch, while написать могу, но на этом всё. Мои знания остались поверхностные с первого курса, как только дело дошло до указателей. В универе толком ничему не учат, дают только херовые методички, задания и делайте с этим что хотите, главное, чтобы прислали к дедлайну.
У кого не спрошу какие курсы лучше пройти, какие толковые, какие отстойные, никто ничего сказать не может.
Может быть здесь кто-то сможет что-нибудь посоветовать. Меня, например, заинтересовал способ изучения языка через создание игр на UE4. Но при этом всегда демотивирует неуверенность в том, толковый ли этот курс или он будет такой же бессмысленный как те, что дают нам преподаватели (неразвернутая информация, кучу всего нужно искать самостоятельно в других источниках и тп)
Вот, собственно, сама книга, про которую я говорю:

Выбор курса Вопрос, Текст, C++, Образование, Обучение, Учеба, Помощь, Программирование

Буду благодарна, если здесь заверят этот курс как годный, или подскажут на своем опыте другие.

Показать полностью 1
Вопрос Текст C++ Образование Обучение Учеба Помощь Программирование
27
6
TB3Zveno7
TB3Zveno7
2 года назад
Лига программистов

Нужна помощь по настройке VS Code для работы с библиотеками от CS50⁠⁠

Начинал учёбу с их облачной IDE, не обращая внимание на дисклеймер.

Нужна помощь по настройке VS Code для работы с библиотеками от CS50 Информатика, Программирование, C++, Разработка, Нужен совет, Программист, Помощь, Учеба, Без рейтинга

А потом кааак дошло! Пулей скачал архив своих учебных говнокодов, ибо их там уже столько много, что было бы жалко их потерять. Начал готовить плацдарм для перехода на стационарную IDE. Сначала хотел скачать VS Community Edition, но понял, что это не для моего интернета. VS Code хватит до лучших времён.


Итак, что было сделано... Установил VS Code, в соответствии с инструкцией накатил расширения С/C++ от мелкомягких. Поставлен, обновлён и добавлен в PATH терминал msys64. Через него скачена чихуйня для компилирования gcc, g++ и gdb. Затем через PATH подключил её к терминалу VS Code. Хватило толку сделать всё правильно, компиляция работает. Затык случился на гарвардских учебных библиотеках.


На установку cs50.h нашёл мануал. Инструция заключается в том, чтобы скачать с гитхаба cs50.c и cs50.h, положить в директорию с файлом, в котором она подключается, и через "" вместо <> прописать в строке #include нужного файла. Далее скомпилировать этот файл в связке с cs50.c. Это чисто проверка работоспособности библиотеки. После этого этапа должен был быть этап автоматизации подключения библиотеки, но перейти к нему я не смог, ибо первая часть выполнена некорректно. Неясно, в чём эта некорректность заключается. Нет файла в директории, хоть и он физически в ней находится.

Нужна помощь по настройке VS Code для работы с библиотеками от CS50 Информатика, Программирование, C++, Разработка, Нужен совет, Программист, Помощь, Учеба, Без рейтинга

Помимо cs50.h, мне ещё предстоит где-то наковырять stdio.h, ctype.h, math.h, stdlib.h, string.h, strings.h, time.h в соответствии с https://manual.cs50.io/


Либо есть вариант забить на CS50 и найти другой курс по Computer Science, в котором все функции будут создаваться вручную, а не выдёргиваться из непонятных библиотек.


Upd. Решено. #comment_252448615

Показать полностью 1
Информатика Программирование C++ Разработка Нужен совет Программист Помощь Учеба Без рейтинга
16
8
iv.dark
iv.dark
2 года назад

Прошу помощи⁠⁠

Здравствуйте уважаемые, прошу сильно не пинать. Являюсь обычным сис.админом и в программирование не умею, разве что когда то очень давно на бэйсике что то пытался писать)))  но по работе встала задача написать программу и в целом при помощи тырнета удалось написать (скопипастить) программу. Но работать с ней очень не удобно, хотел попросить вас о помощи, подскажите пожалуйста как сделать поле для ввода IP адреса что бы оно менялось везде, что бы не переписывать каждый раз когда нужно сменить адрес на всех кнопках?

Прошу помощи Программирование, C++, Помощь
Прошу помощи Программирование, C++, Помощь
[моё] Программирование C++ Помощь
14
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии