Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
8 / 6 / 4
Регистрация: 21.05.2022
Сообщений: 147

Изучение C++ в комплексе с OpenGL

15.02.2025, 19:13. Показов 29226. Ответов 60
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Что бы я не плодил темы со своими вопросами - спрошу тут.
Я понимаю что возможности С++ огромные начиная от работы с железом, базами данных и т.д.
Повторил игру Змейка с использованием C++/CLI Windows Forms - понимаю что мне ни это нужно.

Вопрос такого плана!

Если я начну изучать С++ в комплексе с OpenGL (есть хорошие и понятные уроки). Что такое OpenGL я просмотрел 15минутное видео и понял.
Буду я развиваться в изучении С++?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.02.2025, 19:13
Ответы с готовыми решениями:

Разработать програмный комплекс для решения задачи
"Для определения рентабельности парикмахерской используют прибыль на одного работающего.В ЭВМ поступают данные о названии...

Разработка ScreenSaver "Летающий текст" с OpenGL
Здравствуйте.Помогите пожалуйста написать программу- заставку на языке программирования С ++ в середе Borland C ++ Builder с...

С++ изучен синтаксис, что дальше?
Здравствуйте, обращаюсь за советами. Прочитал книгу по синтаксису C++ - то есть знания на начальном уровне есть (пусть не все явно...

60
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
19.02.2025, 22:19
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от alecss131 Посмотреть сообщение
Все же написания движков это отдельное и для создания игр лучше использовать готовые движки. Игровой движок это не только графика. Изучение графических апи будет полезно, но чтобы на них писать игры, это все равно что писать гуй на винапи
Я вот тоже с трудом себе представляю написание мало-мальски толковой игры с нуля.
Какой то движок нужно использовать.
( *** Хотя 2д (даже изометрическую) игру я бы писал всё же с нуля, уж самому такие вещи проще сделать чем ради неё изучать движок. А вот если есть желание идти этим нелегким путем (геймдев), то всё же нужно изучать движок. Это окупится.
***)

cosmos44,
Поэтому ещё раз задумайтесь в выборе изучаемого ЯП(языка программирования).
0
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 14:51
Цитата Сообщение от cosmos44 Посмотреть сообщение
Вот что ИИ выдал мне на вопрос - "Создание окна на чистом C++" - код ниже.
Вопрос!? Это так и есть? Или... Если так, то я начну разбираться, что к чему с данного примера.
Попробуйте скопировать этот пример запустить. Я пробовал в CLion 2024 и VS 2022. Единственное, мне пришлось заменить -L перед строками на TEXT вот так:

Было:

C++
1
MessageBox(NULL, L"Ошибка регистрации класса окна!", L"Ошибка", MB_ICONERROR);
Стало:

C++
1
MessageBox(NULL, TEXT("Ошибка регистрации класса окна!"), TEXT("Ошибка"), MB_ICONERROR);
Иначе выдавались ошибки, что невозможно преобразовать один строковый тип в другой. При запуске появляется окно с кракозябами вместо кириллицы:



На пользу обучению пойдёт установка среду программирования CLion в дополнение к VS. Чередуйте работу в этих IDE. В VS лучше создавайте проект типа "CMake Proejct". В этом случае вы сможете открывать свои проекты не только в VS, но и во многие других IDE, таких как: CLion, Qt Creator, KDevelop, и в редакторе кода VS Code (после установки плагина для CMake). Это удобно, если, например, возникла проблема в одной IDE, то можно быстро проверить проект в другой.

Попробуйте создать "CMake" проект в VS и скопируйте вам пример с пустым окном на WinAPI. Запустите VS 2022. Нажмите кнопку создания нового проекта:



В появившимся окне найдите в списке тип проекта "CMake Project":



В следующем окне (см. скриншот ниже):
  1. Введите имя проекта, например: "my-winapi-window"
  2. Выберите папку, где создать проект
  3. Поставьте галочку, чтобы проект и решение были в одной папке. Вам не нужно знать, что такое решение и проект и чем они отличаются



Нажмите кнопку "Create" в правом нижнем углу:

Название: 1c6b692c341af3ac9299b578ff60e6fc8331baca.png
Просмотров: 80

Размер: 2.8 Кб

Проект будет создан:



Вы можете скомпилировать и запустить программу на выполнение с помощью сочетания клавиш Ctrl+F5, либо можно выбрать в меню: "Build" -> "Build Solution":



Собранный EXE-файл вы найдёте в следующей папке относительно корня проекта: "my-winapi-window\out\build\x64-debug":

0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 15:04
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Единственное, мне пришлось заменить -L перед строками на TEXT
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Иначе выдавались ошибки, что невозможно преобразовать один строковый тип в другой.
Так нужно разобраться в причинах, а не просто шаманить. Судя по этому описанию, у вас был отключен юникод, хотя строки были рассчитаны именно на него.
Смысл макроса TEXT("meow") в том, чтобы проверять, подключен ли юникод, если да, то текст автоматически заменяется на L"meow", если нет, то остается "meow".
У вас же сейчас программа будет в ANSI.
Я бы все-таки использовал юникод. Нужно добавить:
C++
1
2
3
#ifndef UNICODE
#define UNICODE
#endif
1
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 15:06
Я ошибся выше. Не тот скриншот показал. Вместо этого скриншота:



Должен быть этот:

0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 15:08
Цитата Сообщение от 8Observer8 Посмотреть сообщение
C++
1
MessageBox(NULL, L"Ошибка регистрации класса окна!", L"Ошибка", MB_ICONERROR);
но так, естественно, писать неправильно

раз не используется макрос TEXT, а явно используется юникодная версия, то хорошим тоном будет использовать MessageBoxW.
Если же используется универсальная версия - MessageBox, то тогда значит нужно использовать этот макрос.
1
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 15:37
Да, установка UNICODE:

C++
1
2
3
#ifndef UNICODE
#define UNICODE
#endif
работает с изначальным кодом:

C++
1
MessageBox(NULL, L"Ошибка регистрации класса окна!", L"Ошибка", MB_ICONERROR);
Проверил в VS и CLion. В CLion выбрал MinGW вместо MSVC. В заголовке окна выводится кириллица:

Название: b76bdcd3ed80a5bafe961ce7013e83836cecfa20.png
Просмотров: 83

Размер: 2.8 Кб

Причём в VS нужно добавить WIN32 в здесь:

Code
1
2
3
4
5
add_executable (my-winapi-window WIN32)
 
target_sources(my-winapi-window PRIVATE
    my-winapi-window.cpp
)
Потому что выдаст ошибку:

error LNK2019: unresolved external symbol main referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ)
А в CLion + MinGW не нужно можно не добавлять, ошибки нет, но тогда вместе с окном будет выводится консоль, но эту консоль можно использовать для отладки, выводя какие-нибудь отладочные данные в неё.

В CLion нет захламления в файле CMakeLists.txt:

Code
1
2
3
4
5
6
cmake_minimum_required(VERSION 3.30)
project(untitled2)
 
set(CMAKE_CXX_STANDARD 20)
 
add_executable(untitled2 main.cpp)
Здесь только указание минимальной версии CMake, указано имя проекта, выбрана версия C++ и добавлен файл main.cpp, с указанием имени генерируемого EXE: untitled2

А в VS файл CMakeLists.txt получается больше из-за if (POLICY CMP0141) и if (CMAKE_VERSION VERSION_GREATER 3.12), которые:

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# CMakeList.txt : CMake project for my-winapi-window, include source and define
# project specific logic here.
#
cmake_minimum_required (VERSION 3.8)
 
# Enable Hot Reload for MSVC compilers if supported.
if (POLICY CMP0141)
  cmake_policy(SET CMP0141 NEW)
  set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "$<IF:$<AND:$<C_COMPILER_ID:MSVC>,$<CXX_COMPILER_ID:MSVC>>,$<$<CONFIG:Debug,RelWithDebInfo>:EditAndContinue>,$<$<CONFIG:Debug,RelWithDebInfo>:ProgramDatabase>>")
endif()
 
project ("my-winapi-window")
 
add_executable (my-winapi-window WIN32)
 
target_sources(my-winapi-window PRIVATE
    my-winapi-window.cpp
)
 
if (CMAKE_VERSION VERSION_GREATER 3.12)
  set_property(TARGET my-winapi-window PROPERTY CXX_STANDARD 20)
endif()
Лишнее можно удалить в VS:

Code
1
2
3
4
5
6
7
8
9
10
11
cmake_minimum_required (VERSION 3.8)
 
project ("my-winapi-window")
 
add_executable (my-winapi-window WIN32)
 
target_sources(my-winapi-window PRIVATE
    my-winapi-window.cpp
)
 
set(CMAKE_CXX_STANDARD 20)
Можно просто не обращать внимания на лишнее.
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 15:52
Цитата Сообщение от 8Observer8 Посмотреть сообщение
В CLion нет захламления в файле CMakeLists.txt
Цитата Сообщение от 8Observer8 Посмотреть сообщение
А в VS файл CMakeLists.txt получается больше
ну не знаю, можно ли это называть захламлением? как по мне, VS более грамотно поступает

Например,

Цитата Сообщение от 8Observer8 Посмотреть сообщение
C++
1
2
3
if (CMAKE_VERSION VERSION_GREATER 3.12)
  set_property(TARGET my-winapi-window PROPERTY CXX_STANDARD 20)
endif()
Если зайти на https://cmake.org/cmake/help/l... NDARD.html, то можно увидеть, что значение 20 для CXX_STANDARD поддерживается только с версии CMake 3.12.
VS таким образом гарантирует, чтобы все четко работало на версиях CMake ниже 3.12, учитывая, что выставлен
C++
1
cmake_minimum_required (VERSION 3.8)
Так же само, касается Hot Reload. VS грамотно прописывает, чтобы работала данная фича для компилятора MSVC.

И вообще, CMakeLists уже давно стало чем-то, что заполняется программой, а не человеком. Нормальная IDE сама заполняет этот файл, а пользователь выставляет нужные ему значения через удобный графический интерфейс.

***
Касательно CLion, то это же платная программа. Существуют, бесплатные версии для студентов и других категорий, но в общем, это платная программа. Поэтому, сомнительно ее рекомендовать на форуме. Либо намекни уже эвфемизмами, откуда ее можно бесплатно скачать, но так, чтобы не нарушать правила форума.
0
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 15:57
Цитата Сообщение от Royal_X Посмотреть сообщение
то хорошим тоном будет использовать MessageBoxW
Соответственно, у других функции, которые принимают строки тоже можно дописать "W", например, CreateWindowW и GetMessageW.

Добавлено через 1 минуту
Цитата Сообщение от Royal_X Посмотреть сообщение
ну не знаю, можно ли это называть захламлением?
Я имею ввиду захламление с точки зрения автора темы. Лучше когда меньше отвлекающих факторов, чтобы было всё просто и понятно, чтобы это не вызывало тревожность.
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 16:00
8Observer8, вообще, на дворе 2025 год, и нужно использовать юникод везде, где только можно.
Соответственно, эти макросы, которые использовались в переходной период (когда один и тот же код должен был компилироваться с юникодом и без него), сейчас потеряли актуальность. Нужно просто подключать юникод и использовать юникодные функции W / ExW. Конечно, универсальные функции тоже будут работать (те, что вообще без букв W или A), но лучше лепить W, чтобы явно намекнуть, что код проектирован под юникод и только под него. И так же само, можно без макроса использовать L строки.
И, кстати, на WinAPI есть функции, которые работают только с юникодом, например, Graphics::DrawString из Gdi+. Так что, юникод это правильный выбор.
0
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 16:07
Цитата Сообщение от Royal_X Посмотреть сообщение
Касательно CLion, то это же платная программа. Существуют, бесплатные версии для студентов и других категорий, но в общем, это платная программа. Поэтому, сомнительно ее рекомендовать на форуме. Либо намекни уже эвфемизмами, откуда ее можно бесплатно скачать, но так, чтобы не нарушать правила форума.
Это как с Maya и 3DsMax. Тоже платные есть бесплатные версии для студентов. Раньше давали на 3 года без подтверждения, что являешься студентом, а теперь стали давать их только на 1 год и нужно подтверждение, что студент. Не знаю, как-то не запрещено на форуме рекомендовать платные программы типа Maya или Photoshop. Если допустим, человек захотел скачать себе какую-то из этих программ, то он сам быстро поймёт, что они платные. А дальше сам решит. Может он из богатой семьи или сам богатый без проблем их купит. Второй человек найдёт бесплатный аналог. Никакие правила форума не нарушены. Может человек отправит подтверждение, что он студент и ему пришлют CLion. Мне нравится эта среда тем, что она не оставляет выбора, кроме как использовать CMake, а на VS очень много старых видео, где настройка VS другая.
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 16:24
Цитата Сообщение от 8Observer8 Посмотреть сообщение
и нужно подтверждение, что студент
это все автоматически, они просто смотрят на домен эмейла. Если это университетский домен, то тогда дают лицензию на год.

Например, у меня есть такой эмейл. Я когда захожу в продукты Office 365 или Copilot этим эмейлом, автоматически получаю лицензию. Сейчас, например, у меня премиум копилот. Так же само, с этим эмейлом могу получить лицензию Adobe Creative Cloud или другого продукта, который имеет студ. лицензию.

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

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

Т.е. JetBrains и прочие компании манят бесплатными лицензиями не случайно. Они хотят, чтобы люди подсели на них.
И вот поэтому, несмотря на наличие университетского эмейла, я не собираюсь устанавливать CLion.

Тем более, VS самая лучшая среда для разработки на WinAPI.

Добавлено через 4 минуты
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Мне нравится эта среда тем, что она не оставляет выбора, кроме как использовать CMake
KDevelop тоже не оставляет выбора.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
20.02.2025, 16:36
Цитата Сообщение от cosmos44 Посмотреть сообщение
Что посоветуете далее? К примеру написать не сложное на чистом C++ с выводом или отображением в окне?
Есть такая модель данных : называется граф.
Начните его изучать.
-Создайте свои АТД(абстрактный тип данных, можете загуглить в вики) Списка, Стека, Очереди и графа)
Создайте генерацию графа (работа со случайными числами).
Отобразите граф в окне (использование примитивов).
Создайте случайный ориентированный граф из различных элементов.
Найдите кратчайший путь и/или все возможные от какой то вершины в другую.
Визуализируйте процесс их нахождения.
И так далее.
Разделите процесс визуального отображения, логики алгоритмов и основной программы в разные потоки.

Тут много разнообразной работы. Но всё полезно.

Цитата Сообщение от alecss131 Посмотреть сообщение
Например игры Быки и коровы
Это слишком по детски. Учитывая что какой-никакой опыт у человека уже есть.
А цели, кхм, не намного меньше Наполеоновских.

Добавлено через 7 минут
Цитата Сообщение от Royal_X Посмотреть сообщение
VS
VS - это же Visual Studio? (от мелкомягких). А то создали ещё VS Code и теперь тут путаница.
Как среда, в принципе не плоха IDE. Если иметь хорошее железо и большой монитор.
0
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 16:40
Цитата Сообщение от Royal_X Посмотреть сообщение
KDevelop тоже не оставляет выбора.
Да, как и Qt Creator, который можно скачать отдельно от Qt https://github.com/qt-creator/qt-creator/releases Но от глючный. Причём KDevelop для Windows ещё более глючный. Разработчики забили на поддержку KDevelop для Windows. У них даже не работает ссылка на скачивание для Windows на официальном сайте: https://kdevelop.org/download/ Я создал Issue по этому поводу: https://bugs.kde.org/show_bug.cgi?id=498290, но мне ответили, что у них уже есть такое issue: https://invent.kde.org/kdevelo... /issues/41, которое было создано 11 месяцев назад и до сих пор открыто. Я спросил, есть ли у них есть ли версия для Windows, они дали ссылку, что есть очень сырая версия: https://invent.kde.org/kdevelo... quests/694 Написали, что "no one has tested them yet", то есть её ещё никто не тестировал. Но эта версия очень сильно глючная. У меня просто всё перекосилось и мерцало. Они когда-то давно запросили поддержку Windows и видимо сосредоточились на Linux. Весной 2024-го года впервые в истории Linux по количеству пользователей перевалил за 4%.
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 16:41
Цитата Сообщение от SmallEvil Посмотреть сообщение
Если иметь хорошее железо
JetBrains-среды тоже не для калькуляторов. На проектах анрил райдер может запросто 10+ ГБ ОЗУ съесть. VS жрет гораздо меньше. И вообще, неспроста в Unity и в UE на винде VS является дефолтным редактором.

Android Studio стала даже объектом многочисленных мемов.



А ведь, по сути, это InteliJ IDEA + менеджер сдк и эмуляторы.
0
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 17:03
Я находил старую версию KDevelop, которую скачал, на свой страх и риск, с какого-то подозрительного сайта на российском домене. В ней была проблема, что нельзя было переключиться на GDB, а была только доступна опция LLDB, но она тоже не работала, хотя я установил MinGW GCC 14.2, который включал LLDB: https://winlibs.com/



Кучу времени потратил на поиски и на задавание вопросов. Хотел написать тутор для начинающих, как ставить точки останова в этой среде. Я думаю, это важно, чтобы начинающий мог выполнять программу по шагам, чтобы изучать программу, как работают условия, циклы, или как искать логические ошибки ошибки. Но не работает эта среда так, чтобы скачать с официально сайта и поставить точки останова. Так работает CLion и Visual Studio. В VSCode тоже не работает так, чтобы скачал и поставил точки останова.

В Qt Creator при каждом новом запуске возникает ошибка:
CMake Tool is unconfigured. CMake generator will be ignored.
Я создавал тему на forum.qt.io по этому поводу. Моя процедура запуска такая, что я каждый раз нахожу в настройках авто найденный путь к Python и удаляю его, а потом перезапускаю IDE. Тогда ошибка пропадает до следующего перезапуска IDE.

Миниатюра
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 17:25
Цитата Сообщение от 8Observer8 Посмотреть сообщение
В VSCode тоже не работает так, чтобы скачал и поставил точки останова.
Ну нужно же настроить отладчик, и всё будет работать.



Цитата Сообщение от 8Observer8 Посмотреть сообщение
В Qt Creator при каждом новом запуске возникает ошибка
Qt тоже требует правильной настройки. Причем, если обновляется Qt или компилятор, то нужно обновить настройки проекта. И, делается это одним нажатием клавиши...

0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 17:28
8Observer8, кстати, я в Qt использую MSVC, ибо он круче и некоторые компоненты Qt работают только с ним.
0
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 17:32
У меня на за браузерных окном открыты: VS и Clion. Я где-то минут 15-20 не переключался на них, то есть не пользовался, они просто были открыты в фоне. Они потребовали столько памяти в режиме простоя:



Всего установлено 8 ГБайт оперативной памяти. Да, очень много есть CLion. Но мне кажется, что даже школьники в подавляющем большинстве имеют, как минимум 16 ГБ, а то и 64 ГБ оперативы. Они почти все игроманы. Этим фактором можно пренебречь. Главное, чтобы CLion и VS были установлены на SSD, а сейчас же ещё более быстрые есть альтернативы для SSD. Обе среды одинаково стабильны. Они определяют отладчик без проблем. Поставил, запустил и пользуешься. Я почти не работал в CLion. Использую Sublime Text 4 и сборку из консоли. Больше работаю с JavaScript и HTML, с отладкой в браузере Chrome. Если нужно отладить по шагам, то запускал Qt Creator, а сейчас для отладки (или если нужно авто дополнение для новой незнакомой библиотеки), то запускаю VS.

Я раньше не замечал, то у меня Qt Creator забирал до 90% CPU:



Возможно, потому что у меня не было SSD. А на SSD я ещё не ставил Qt Creator. Может у меня был убитый HHD, но не знаю, как это может быть связано с CPU, скорее всего, никак.

Миниатюры
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,603
20.02.2025, 17:36
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Qt Creator забирал до 90% CPU
да это просто clang-tidy наверное в фоне работает или какой-нибудь фоновый процесс

У меня Qt Creator вообще не грузит проц. и не жрет память
0
9987 / 2959 / 497
Регистрация: 05.10.2013
Сообщений: 8,110
Записей в блоге: 243
20.02.2025, 17:47
Цитата Сообщение от Royal_X Посмотреть сообщение
кстати, я в Qt использую MSVC, ибо он круче и некоторые компоненты Qt работают только с ним.
Я заметил, что CMake намного быстрее собирает библиотеки, чем MinGW. Я вчера собирал SDL 3.2.4 на MinGW GCC 14.2. Конфигурирование заняло 4 минуты, против 38 секунд на MSVC. Сборка на MinGW была тоже намного больше, но я забыл засечь. В VS выдаётся время сборки в конце: took 01:21.480 minutes

Но я всё равно библиотеки собираю как на MinGW, так и на MSVC в Debug и Release. Потому что какие-то ошибки можно там и там протестить. Плюс в release мне больше нравится, как собирает MinGW - он не оставляет никаких зависимостей, если собрать EXE в статику:

Code
1
target_link_options(app PRIVATE -static)
А на MSVC пользователям потребуется ещё какие-нибудь ран таймы ставить от VS:



Миниатюры
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.02.2025, 17:47

OpenGL на С++, запущенный через WinAPI
Доброе время суток. Я хочу написать программу для построения фигур Лиссажу, описываемых уравнениями: x=A1*cos(wt); y=A2*cos(mwt+f); ...

QGraphicsView openGL
Помогите разобраться, поискал в интернете, но ничего толком не нашел. в документации написано, чтобы задействовать openGl достаточно...

CreateWindowEx возвращает NULL (Win API и OpenGL: Урок1 от NeHe)
Доброго времени суток! Я скомпилировал программу из урока http://pmg.org.ru/nehe/nehe01.htm, которая должна создавать Open GL окно, но она...

Qt 5.7 OpenGL просит либы
Доброго времени суток. Комплект QT 5.7 MSVC2015. Создал проект, для изучения OpenGL, проблемы с LIB: LNK2019: unresolved external...

OpenGL что не так в коде? вроде все нормально
Собственно вот код, я сижу под убунтой 9.10 и он ругаеться пишет #include&lt;GL/glut.h&gt; int N = 3; int n = 0; int x; int y; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru