Как стать автором
Обновить

Комментарии 18

спасибо за статью, нормально )

Приветствую.

Напишу грубо немного, но "надо, Федя, надо(с)".

Замах на рубль называется. Много пафоса и лишних слов ("std::unique_ptr вместо сырых указателей — в 2025...", "std::string_view экономит копирования строк" и тд).

Что касается советов в конце для новичков и для профи: чтобы советы давать, сначала напишите, пожалуйста: кто вы такой, сколько вам лет, сколько лет пишите профессионально. Сейчас в профиле этого нет, а эта статьи не дала права советы раздавать.

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

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

Юник птр - сейфти разве нет? сырые указатели вроде не сейфти, как я понимаю, со строками тоже деликатный вопрос, есть указатель на начало строки и её длина, можно не копировать строку, а манипулировать ею, держа строку держателем, еще вопрос зачем надо описывать проф. аспекты реализации калькулятора если суть учимся еще пользоваться либой? или тут еще симды надо показывать(а симды разве сейфти?)?

тогда уж лучше если это будет сейфти нечитаемое закидывать в using и далее лаконичный код просто писать.

по времени в кути быстрее, но эти либы дают доступ к изучению алгоритмов понимая, зачем нужен алгоритм сдесь и сейчас, (вьюшка бд,текстовый редактор, калькулятор, вьюшка файлов с простеньким UI cо строками и прочее), 2д еще, ах майнкрафт был написан на первой версии(ну или той которая была доступна) opengl, простите

я же не о том совсем. Зачем об этих мелочах писать вообще, понятно же что на плюсах пишем, понятно что есть unique_ptr, string_view и тд.

В общем, не понял я, в чем польза статьи. Для SFML мало разве примеров в сети. Тогда надо было вначале написать для кого это все и зачем.

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

А так.. ожидания стали у меня завышенные видать. Надо было отфильтровать по рейтингу, чтобы не видеть и не читать. С комментарием тоже поторопился, осн масса статей для новичков везде, надо уже это понять наконец, и простить.

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

Откройте для себя обратную польскую нотацию :)

Не думаю, что это гуд. Лучше разобраться как строить парсеры)

Вообще не понял - какой еще у калькулятора рендеринг? "Qt для полноценного GUI... " OpenGL? Текстуры? И это для рисования серых квадратиков с циферками?
Или это все под Linux такое надо?

Ну чем то вам надо графику зарендерить, не будете же вы каждый пиксель вручную красить

Отрисовка графических примитивов осуществляется силами ОС, тут даже задумываться об этом не надо.
Рендерить - слишком сильный термин для данного случая )

Рендеринг (от англ. rendering — «визуализация») — это процесс получения плоского растрового изображения (или целой цепочки из таких изображений) на основе 2D- или 3D-моделей, созданных художником, дизайнером или модельером.

осуществляется силами ОС

Всё таки хочется чтобы код компилировался и запускался более чем под одной ОС.

Если мы говорим о калькуляторе на C++ (где из GUI только несколько одинаковых кнопок и одно текстовое поле) то можно вообще фултик взять (FLTK), заточенную конкретно под мелкие гуевые задачи, в отличии от медиа-комбайнов типа SDL/SFML. Собирается под все три ОС, линкуется статически, правда внешне выглядит одинаково убого инородно везде.

Ну если вы про вин32 апи, то во первых да как уже сказали, это привязка к одной ОС, а в требованиях к задаче была мультиплатформенность, во вторых, использование самого апи не особо проще, чем конкретную графическую библиотеку привязать

умные указатели вроде unique_ptr и контейнеры вроде vector

Это ж просто база. Современный C++ - это корутины, модули и прочие execution/simd )

Опубликуйте ссылку на гитхаб с исходниками.

Это всё замечательно, но для новичков без подробного гайда по установке/сборке SFML под винду -- бесполезно

Если забить в поисковике Хабра слово "SFML", то на первой же странице несколько статей конкретно о ее установке/сборке выдается. Одна только инструкция для винды увеличит подобную статью в 2 раза, при этом способов сборки более 100500 на каждый вкус и цвет.

Плюс в официальных доках вся инфа о сборке есть (см. Getting started).

Она проще, чем Qt

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации