Задать вопрос
  • При запуске проекта на SFML выпадает ошибка?

    @MarkusD Куратор тега C++
    Денис, ошибку надо смотреть в отладчике.
    Вот смотри. Debug Assertion Failed! - это означает что релиз ты запускаешь под отладкой.
    Далее. Прервать Повтор Пропустить - эти кнопки тут не за просто так. Твоя кнопка - "Повтор", ее нажатие приведет к остановке в том месте твоего кода, где исключение и возникло.
    Не бойся вступать с системой в диалог когда она тебе его предлагает. Жми смело на "Прервать" и смотри поведение отладчика. Жми на "Пропустить" и смотри что будет дальше.
    Когда увидишь код, в котором случилось исключение, сможешь понять что произошло и как его исправить чтобы этого больше не происходило.
  • При запуске проекта на SFML выпадает ошибка?

    @MarkusD Куратор тега C++
    Денис , что у тебя в вопросе делает скриншот с кодом? Это - нарушение П3.8 регламента работы сервиса.
    Если ты не в курсе, то даже диалоговое окно можно скопировать как текст через Ctrl+C на нем.
  • Не могу подключить библиотеки в Dev C++ 5.4.2?

    @MarkusD Куратор тега C++
    i3stone, ты определенно не тот инструмент выбрал чтобы ожидать отсутствия проблем. :)
    Для начала. Dev C++ 5.4.2 является древнейшим динозавром из 2013 года. Лично представить не могу, что бы человека могло заставить использовать настолько старые инструменты при наличии куда более новых версий.
    Dev C++ вообще является чем-то отстраненным и самобытным. Знания по его настройке и работе с ним понадобятся и пригодятся решительно нигде больше. В отличие от знаний по настройке и работе с Visual Studio Code на всех платформах или более подходящим MS Visual Studio на win/mac.
    Это к тому, что ты счастливчиком являешься далеко неспроста. Умение усложнять себе жизнь лучше использовать там, где ты уже давно являешься профессионалом. А вот тут, где ты еще слабо ориентируешься, жизнь для себя лучше упрощать. :)

    Потом. Библиотекой является не просто какой-то заголовок. Библиотека - это целый комплекс файлов с кодом, сценариями сборки, правилами для сборки публичного и приватного кода. Заголовочный файл - это просто заголовочный файл.
    Если ты выбрал Dev C++, тебе теперь нужно изучить механизмы его настройки для того чтобы твой код мог использовать библиотеки. Потом тебе надо скачать те самые glew и sfml, добавить в свой проект согласно документации Dev C++ и настроить сборку их кода именно как библиотек.
    После этого у тебя все заработает.

    Под Visual Studio, при использовании nuget (тоже полезная в изучении штука), у тебя это все заняло бы гораздо меньше времени и сил.
  • Как настроить 2 монитора как два рабочих стола?

    Сергей Кузнецов,
    Винда не поддерживает из коробки виртуальные рабочие столы.

    Win+Ctrl+D.

    А вот как вернуться обратно - уже не скажу. Винда же не поддерживает виртуальные рабочие столы из коробки. :)

    AntenaL, насколько я помню, именно 4-мя пальцами по тачпаду и меняются виртуальные рабочие столы на ноутбуках. Т.е. ты работаешь не со вторым монитором, а с двумя виртуальными рабочими столами, каждый из которых представлен на присутствующих в системе мониторах.
    Попробуй ради эксперимента подключить монитор, получит там второй рабочий стол, бросить на него что-нибудь и сделать свайп 4-мя пальцами по тачпаду. Сразу будет все понятно.
  • Как правильно реализовать шаблонный класс рациональных чисел в С++?

    @MarkusD Куратор тега C++
    Alyona_pr, "Спасибо" на Тостере принято выражать кнопкой "нравится" и отметкой о решении если ответ решает твой вопрос.
  • Не могу подключить библиотеки в Dev C++ 5.4.2?

    @MarkusD Куратор тега C++
    i3stone , как конкретно ты подключаешь эту библиотеку? У тебя есть код или сценарии сборки и топология твоего проекта?
    Еще интересует вопрос: что именно ты понимаешь под библиотекой?
  • Как правильно реализовать шаблонный класс рациональных чисел в С++?

    @MarkusD Куратор тега C++
    User700, ты извини что я так вторгаюсь в твой ответ со своими советами. Не смог молча пройти мимо.
    Да. С учетом этого дополнения твой ответ можно считать хорошим решением.
  • Как правильно реализовать шаблонный класс рациональных чисел в С++?

    @MarkusD Куратор тега C++
    User700,
    template <class T1> 
    friend istream& operator>>(istream& stream_in, rat<T1> &rvalue);

    Это будет означать что все инстанцирования шаблона перегрузки operator>> будут дружественны всем инстанцированиям шаблона типа rat.
    Наверное это немного неправильно.
    Наверное правильно когда для каждого инстанцирования шаблона rat существует только одно дружественное инстанцирование шаблона перегрузки operator>>.
  • Как пользоваться функцией EnumWindows?

    @MarkusD Куратор тега C++
    Limons , обрати внимание на П3.8 регламента работы сервиса.
    Код в скриншотах запрещено выкладывать.
  • Работа с " " (char[])?

    @MarkusD Куратор тега C++
    Модератор , у нас тут, кажется, чистосердечное признание в нарушении П6.6.
    Аккаунты Limons и DoubleTree, как видно из всей этой переписки, принадлежат одному человеку.
  • Что изучать начинающему разработчику игр?

    SemenAnnigilator,
    А кем по твоему тогда становятся

    Не по-моему, а в принципе.
    Изучивший лишь одну норму законодательства не становится юристом. Изучивший лишь работу одного токарного станка не становится токарем. Знание какого-то одного инструмента не делает тебя профессионалом.

    Профессионализм заключается в изучении и знании самых основ.
    Просто представь, сколько людей с твоими убеждениями нам приходится фильтровать каждый день на собеседованиях. Подобные кандидаты не проходят банально по знаниям.
    Да, кому-то UE нужен в работе. Да, кому-то нужен в работе Unity. Но это далеко не первоочередные требования.
  • Что изучать начинающему разработчику игр?

    SemenAnnigilator , встречный вопрос. Зачем тебе изучать Unreal engine или Unity?
    Если ты думаешь что изучая это ты станешь разработчиком игр, то ты себя просто обманываешь.
    Ставя свой вопрос между Unreal engine или Unity, дай мне ответ, зачем они вообще тебе нужны.
  • В чем моя ошибка изучения С++?

    @MarkusD Куратор тега C++
    Кирилл Тритонов , ответ зависит от того, кем ты хочешь стать.
    Если ты хочешь стать инженером ПО, то тебе следует сразу знать что нормой работы для инженера является работа с документами. Большую часть времени инженер изучает документации и сверяется в справочниках - работает с источниками.
    Если ты не хочешь стать инженером, то в текущей твоей ситуации для тебя все нормально.

    Опыт приходит в процессе репетитатива - повторного выполнения схожих действий. Вспомни как ты учился написанию букв.
    Что-то забыл - изучи повторно. Потерял информацию - наверстай. Изучил новое - применяй сразу же. Репетитатив возврата к документации возымеет свое действие в виде выработанных навыков и твердой памяти.
  • Как создать окно OpenGL в окне полученном от CreateWindowEx (WINAPI)?

    LoliDeveloper, для написания ответа сверился с документацией glfw и понял что я тебя обманул по поводу невозможности совместного управления ресурсами. Исправляю свою ошибку. В моем ответе уже более точная информация.

    А еще ты не сможешь использовать одни и те же идентификаторы ресурсов для отрисовки в этих окнах. У каждого окна будет свой набор идентификаторов.

    Вот это у меня не правильно. Если в glfwCreateWindow передать ранее созданное окно, то контекст нового окна разделит управление ресурсами с ранее созданным.
  • Есть ли у c++ собственные возможности работы с графикой?

    @MarkusD Куратор тега C++
    Void59, поточнее: системные функции - это те самые DirectX, OpenGL и GDI вместе с X Window API.
    Это - все то, без чего ты хочешь работать с графикой.
  • Как создать окно OpenGL в окне полученном от CreateWindowEx (WINAPI)?

    LoliDeveloper, про несколько оконных фреймов я не понимаю. Понимаешь, frame - это терминология без связи с WinAPI или glfw. Окно в glfw - это связка контекста OpenGL и окна из WinAPI. Окно в WinAPI - это область экрана с заголовком и рабочей областью.
    Тебе нужно рисовать картинку с помощью OpenGL в нескольких окнах? glfw это не поддерживает. Он может сделать для тебя несколько окон с привязанными к ним контекстами, но каждое окно должно быть создано в отдельном потоке и в нем же окно должно быть назначено текущим. С таким подходом проблем больше чем пользы. А еще ты не сможешь использовать одни и те же идентификаторы ресурсов для отрисовки в этих окнах. У каждого окна будет свой набор идентификаторов.
    Для решения такой задачи тебе стоит напрямую использовать WGL и WinAPI. При чем, одного только чистого WGL тебе тоже не хватит, придется запрашивать расширение для создания контекстов с совместным хранением ресурсов.
    За то тебе будет доступна большая гибкость в работе. Например, контекст ты сможешь назначать конкретно для отрисовки конкретного окна и только на время этой отрисовки.
    Если ты хочешь добавить UI в свое окно, то тебе лучше воспользоваться imgui или подобной библиотеки.
  • Есть ли функция валидации Ipv4 в C++?

    @MarkusD Куратор тега C++
    logan baby, IP адрес - это структура из 4 (для IPv4, т.е. in_addr) или 16 (для IPv6, т.е. in6_addr) байт, в полях которой нет места точкам, а тип полей всегда uint8_t, т.е. значения всегда от 0 и до 255.

    Напиши более конкретно, что тебя интересует.
  • Как создать окно OpenGL в окне полученном от CreateWindowEx (WINAPI)?

    LoliDeveloper , это западня glfw. Ты или пользуешься glfw и свое окно создаешь только его средствами, или ты создаешь окно своими руками и больше не пользуешься услугами glfw вообще.
    Все дело в том, что glfw является кроссплатформенной библиотекой и старается абстрагировать тебя от платформозависимого кода. Старается он это, надо сказать, слишком.
  • Как игровые движки хранят объекты сцены?

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