1.2. C++ 实践#

1.2.1. CodeBlocks 使用#

  1. Code::Blocks 界面

    1. Title bar, menu bar, tool bar, status bar, project window, editor window

    2. Menu: File, Edit, …

    3. Shortcuts: Ctrl + A/S/Z/X/C/V

    4. Tool bar:

      1. file

      2. redo, undo

      3. cut, copy, paste

      4. search, replace

      5. build, run, build and run, rebuild

      6. debug, set breakpoint

      7. jump, set bookmark

    5. File -> new -> Project...: Console Application

    6. 使用 Project Properties 检查路径

  2. C++ Reference

    1. https://cppreference.com/

    2. https://cppreference.net/

    3. https://zh.cppreference.net/

    4. https://cppreference.cn/

1.2.2. C++ 标准库#

https://zh.cppreference.net/cpp/headers.html

  1. C library

    1. <cassert>

    2. <cctype>

    3. <climits>

    4. <cmath>

    5. <cstdio>

    6. <cstdlib>

    7. <cstring>

    8. <ctime>

  2. Input/Output

    1. <iostream>, <fstream>, <filesystem>

    2. <format>, <print>

  3. Container

    1. <string>, <string_view>

    2. <array>, <list>, <map>, <queue>, <set>, <stack>, <vector>, <forward_list>, <tuple>, <unordered_map>, <unordered_set>, <flat_map>, <flat_set>

  4. <chrono>

  5. <random>

  6. <limits>

  7. <numbers>

  8. <ratio>

1.2.3. 常用工具#

  1. 编译器:MSYS2, gcc, g++, clang, clang++, cl

  2. 编辑器、IDE:Zed, Code::Blocks, CodeLite, Visual Studio Code

  3. 构建系统:make, cmake, meson, xmake, premake

  4. 版本管理:git + SourceGit/TortoiseGit, svn + TortoiseSVN

  5. 文件比较:Meld, Kdiff3, WinMerge

  6. Shell: Cmd, PowerShell, Bash, Fish

  7. 终端模拟器:Windows Terminal, Mintty UCRT64, WezTerm, Kitty, Ghostty

1.2.4. TUI#

  1. FTXUI

  2. FINAL CUT

  3. imtui

  4. Oof

1.2.5. Raylib#

1.2.6. 高级语法#

  1. array

  2. function

  3. struct

  4. class

  5. union

  6. pointer & reference

1.2.7. GUI#

  1. libui-ng

  2. FLTK