Ответы пользователя по тегу C++
  • Нужно ли сокращать код?

    @majstar_Zubr
    C++, C#, gamedev
    Нет, все просто, понятно, и главное - быстро работает. Если сократить, может пострадать быстродействие.
    Ответ написан
  • Ввывод сообщения об успешном завершении программы в с++?

    @majstar_Zubr
    C++, C#, gamedev
    Windows просто так не скажет код завершения, его нужно вы вытягивать, например, вот так:

    @echo off
     
    rem A batch file which captures the app's return value.
    
    set arg1=%1
    rem using for executable
    
    set arg2=%2
    rem using for argument #1
    
    shift
    shift
    rem Abling to use bat with arguments
    
    %1 %2
    
    @if "%ERRORLEVEL%" == "0" goto success
     
    :fail
      echo This application has failed!
      echo return value = %ERRORLEVEL%
      goto end
    :success
      echo This application has succeeded!
      echo return value = %ERRORLEVEL%
      goto end
    :end
    echo All Done
    exit /B %ERRORLEVEL%
    /code>
    Ответ написан
    Комментировать
  • Как изучить C++?

    @majstar_Zubr
    C++, C#, gamedev
    0) посмотри что пишут на c++ и задайся вопросом, зачем оно надо https://github.com/fffaraz/awesome-cpp
    1) почитай любую книжку по с++, хоть для чайников, или любой курс по основам, не важно какой. Потыкай, подпиши чего-нибудь. Так вот, это было введение. А теперь ставь linux. Основные команды под терминал и менеджер пакетов под дистрибутив изучи. Что в каждой папке лежит и зачем узнай.
    2) поставь geany, cppcheck, clang-format, warning as errors, и напиши hello world.
    3) а теперь открой Википедию и почитай про стандартную библиотеку. Измени программу так, чтобы компилировалась под виндой тоже. Нужно возвращать платформозависимые коды выхода.
    4) почитай про процесс компиляции (от препроцессора до линковки), слинкуйся статическим и динамически, вынеси из хеллоу ворда печать в динамическую, автоматическое узнавание имени текущего пользователя в статическую либу (ну, узнать можно по user directory например, чтобы программу хеллоу ворда не усложнять)
    5) добавь исключения, напиши make скрипт сборки, и пол Винду тоже.
    6) добавь поддержку utf-8
    7) настрой автоматическую сборку через cmake
    8) теперь можно читать страуструпа, любую книжку, параллельно читая cppreference.com: пройдись по всем ключевым словам, а потом по остальным разделам: нужно чтобы ни одна ссылка не была непосещенной.
    9) параллельно можно изучать boost, qt, node.js или что там интересным показалось; и документацию к компиляторам и стандарт языка можно погладывать.
    10) всю эту систему можно сократить в разы, если сформулировать s.m.a.r.t. цель. Игры? Графика? САПР?Высоконагруженное серверное? Транслятор? Нейронки? Биндинги? Кросплатформенное? Хобби? SkillUp? Работа? За год? Три?
    Ответ написан
  • Если ли готовое решение перевода с big endian в little endian?

    @majstar_Zubr
    C++, C#, gamedev
    Есть готовое кросс-платформенное решение в SDL.

    wiki.libsdl.org/CategoryEndian

    hg.libsdl.org/SDL/file/default/include/SDL_endian.h

    У SDL есть биндинги в частности под C# и python, если с c/c++ не сложилось.
    Ответ написан
    Комментировать