https://github.com/zhangzhuang15/step-cplusplus
help you learn C++ by fixing bugs in C++ exercise files
https://github.com/zhangzhuang15/step-cplusplus
cplusplus-11 exercise learning m1
Last synced: 7 months ago
JSON representation
help you learn C++ by fixing bugs in C++ exercise files
- Host: GitHub
- URL: https://github.com/zhangzhuang15/step-cplusplus
- Owner: zhangzhuang15
- License: mit
- Created: 2022-01-17T09:37:03.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-04-02T17:15:29.000Z (over 1 year ago)
- Last Synced: 2025-01-20T17:17:26.079Z (9 months ago)
- Topics: cplusplus-11, exercise, learning, m1
- Language: C++
- Homepage:
- Size: 8.17 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## 关于本项目
在github上逛了一些教程类的项目,也跟着学习过,但是在学习过程中,发现了其中的一些不方便的地方。
有的说教很多,实践行不高,让人看后如过眼云烟。
有的虽然有例子,但是读者想要运行它们,还要在命令行和切换目录上费些周折。
本项目给出了关于C++的一个小教程,分成若干小节,每个小节中分布若干练习。
这些练习有如下特点:
* 尽量精简,一个练习只涉及一个知识点,尽量不将若干知识点揉在一起;
* 例子非常简单,代码量不大,不复杂;
* 给出执行练习中的代码的指令,读者不必进入到对应目录执行g++指令;
* 不是每个练习都能顺利运行成功,很多的练习都有错误,不过按照笔者给出的注释一点点操作、修改,最终可以运行成功,在这个改错的过程中,读者可以形象地学习到知识点;注意:
* 部分C++的关键字会分散在练习中被提及到,也就是说整个项目并不是完完全全按照关键字设计的,因为关键字可能有好几种用法,必须要和数组、函数等具体的对象结合才能体现,所以就不把它们单独拿出来介绍了;
* 整个C++代码是按照C++11运行的;
* 项目在开发的时候是在ARM64,g++报出的错误可能有所差别;
* 对于Arm64 MacOS,可以直接使用本项目自带的make指令;
* 对于Linux、Windows、Intel MacOS,请
* 下载 [Rust](https://www.rust-lang.org/zh-CN/learn)
* 在项目根路径下,执行
```
cd Runner
cargo build --release
mv target/release/run-executable ../
```
后续笔者会利用Rust的交叉编译工具进行优化🤩
## 使用本项目
* 如果某练习中含有README.md,请先阅读它;
* 没有README.md,直接看main.cpp;
* 运行示例的代码已经在main.cpp的注释里给出,执行指令时直接在本项目的根目录终端运行即可,不必切换到exercise目录中;
* 对于第10节、6-24,需要读者切换到该目录下执行指令,其余章节不需要;
## 项目进展
*2022.2.2*
使用go语言重写run-executable二进制文件,支持跨平台。
二进制文件含义解释 run-executable-darwin-arm64-go:
* darwin这个位置表示操作系统,MacOS对应 darwin,Windows对应windows,Linux对应linux;
* arm64这个位置表示CPU架构,Intel macOS对应 amd64,M1 macOS对应 arm64,Windows仅支持amd64(或叫X86_64,X64),请看清自己的计算机是跑在什么架构的CPU上;
* 使用之前,请选择对应的二进制文件名,将Makefile文件中的executable变量值修改为你选择的二进制文件名,即可使用啦。## 结束语
* 欢迎大家使用
* 欢迎大家提出建议
* 欢迎大家没事儿给个 star🥳