摘要:
向前复制当前行: Ctrl + Alt + up (向上箭头) 向后复制当前行:Ctrl + Alt + down(向下箭头) 将当前行上下移动: Ctrl + shift + up/down 阅读全文
摘要:
创建一个新的分支同时切换到新创建的分支 git checkout -b new-branch 或 git switch -c new-branch 合并两个分支(将B合并到A) git merge B // 操作在A分支(连线模式) git rebase A // 操作在B分支(复制模式) /*注意 阅读全文
摘要:
目的: 原来写了A进行提交,在A的基础上进行修改获得了B,将B进行提交,现在我想继续在A的基础上进行修改,写C进行提交,最终git log能显示ABC三个版本 // 本地文件夹B git log // 查看提交历史与哈希 git checkout <commit_SHA_of_A> // 此时所在分 阅读全文
摘要:
目的:用于处理异常值,可将异常值导出,不用设置中途退出 用法: 文件包含optional 函数返回值为std::optional<T>(注意:T&不可以,但T*可以),异常值使用std::nullopt 用std::optional<T>接收数据结果,.has_value()判断结果是否异常,.va 阅读全文
摘要:
传统:main.cpp + a.cpp(存放定义) + a.h(存放声明) c++20: main.cpp + a.cppm(存放定义,在定义前面写export即可) 模块化编程好处: 不再需要修改了函数到对应修改声明,两头跑 编译更快,模块只在修改后才重新编译 模块化编程举例: // my_mod 阅读全文
摘要:
使用 std::endl 插入到输出流中时,它不仅会在流中插入新的一行,还会强制刷新(flush)流的缓冲区。这意味着它会确保输出被立即写入到目标设备(例如终端或文件),而不是等待缓冲区被填满或显式刷新。 使用 '\n' 字符在流中插入新行,但不会强制刷新缓冲区。这意味着如果有缓冲区,它可能会等到缓 阅读全文
摘要:
argc:参数个数 argv[]:参数内容 注意: 当程序直接运行,没有额外的命令行参数时,argc为1, 因此argc至少为1,argv[]至少长度为1,即argv[0] 存储程序的名称,argv[1] 以后的元素为空 上述两个参数在编译器内部运行无效, 在命令行或终端运行发挥作用 举例:假设需要 阅读全文
摘要:
参考链接: https://blog.csdn.net/fellow1984/article/details/124819231 工具->获取工具和功能->Visual Studio Installer->单个组件:搜索C++ 模块,勾选 项目属性对应项修改 编译代码即可 // hello worl 阅读全文
摘要:
参考链接: https://www.bilibili.com/video/BV1UL411W71w/?spm_id_from=333.999.0.0 重点:状态机->设置状态+应用状态 之前与之后的状态被称为上下文 3.2以后,使用核心渲染模式,难以理解,但自定义效果更好,效率更高 opengl跨平 阅读全文
摘要:
参考链接: https://blog.csdn.net/qq_38230414/article/details/127031320 一劳永逸法: 任选一个空文件夹,Git Bash Here,输入如下 git config --global init.defaultBranch main 阅读全文