The Wayback Machine - https://web.archive.org/web/20230412010419/https://github.com/Light-City/CPlusPlusThings
Skip to content

Light-City/CPlusPlusThings

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.

C++ 那些事

English version is here

感谢各位对《C++ 那些事》的支持,现将内容也同步至B站,以视频的方式展示,可以打开网站直接阅读~欢迎大家 star、转发、PR。

因服务器到期,暂时关闭以下站点,请大家阅读仓库即可,感谢支持。

b站直戳点:https://www.bilibili.com/video/BV1Rv4y1H7LB/?vd_source=bb6532dcd5b1d6b26125da900adb618e

规划

已支持bazel编译,欢迎大家体验~

关于作者

公众号已开放两大入口,分别是专辑与菜单,可以直接在微信公众号上阅读《C++ 那些事》内容,配上该仓库的代码,将会非常的爽,建议大家关注一波。

个人公众号:guangcity

或者扫下面的二维码,欢迎大家反馈及 C++ 交流,本人在微信创建了 C++ 那些事交流群,优质的 C++ 资源交流区,期待大家关注上面公众号,点击公众号右下角->联系我,拉你入群。


关注我

如果觉得不错,关注我吧~


星球

微信公众号

项目运行

-----------新的方式-----------------

vscode + bazel

视频学习本项目

第一期:Step By Step上手编译本项目

-----------老的方式-----------------

  • 代码环境

    Ubuntu 18.04

  • 编辑工具

    CLion

  • 编译器

gcc/g++

尽量用 g++,因为一开始我用的 vim 写的,所以纯 g++,后来用编译器 CLion,部分有 CMakeLists.txt 文件,直接导入就行,后面会更新这个文件包含整个项目,持续关注~

0.项目概要

  • 中文名:C++ 那些事
  • 英文名:Stories About C Plus Plus

这是一个适合初学者从入门到进阶的仓库,解决了面试者与学习者想要深入 C++ 及如何入坑 C++ 的问题。除此之外,本仓库拓展了更加深入的源码分析,多线程并发等的知识,是一个比较全面的 C++ 学习从入门到进阶提升的仓库。

1.基础进阶

2.实战系列

2.1 10 日狂练

基本 c++ 语法

递归、结构体、枚举、静态变量等

函数

函数深入

继承多态

虚函数、抽象类

运算符重载

模板与 STL

异常

文件与流

2.2 重点实战练习

├── 中括号重载.cpp ├── 时钟++运算符重载.cpp ├── 运算符重载之强制转换.cpp └── 重载圆括号的时钟.cpp

├── 函数模板.cpp

├── 动态数组.cpp

├── 字典插入与查找.cpp

├── 异常捕获.cpp

├── 类模板之栈.cpp

├── 类模板特化之数组.cpp

├── 继承与封装.cpp

├── 读写文件综合题.cpp ├── 输入输出运算符重载.cpp ├── 输入输出重载.cpp ├── 输出格式.cpp

3.C++2.0 新特性

3.0 概况

C++2.0 是一个简称,意为「现代 C++」,包括 C++11/14/17/20。

3.1 C++11 新特性

3.2 C++14/17/20

待更新...

4.设计模式

5. STL 源码剖析

STL 源码剖析:gcc 4.9.1

6. 并发编程

6.1 C++ Concurrency in Action

学习资料:https://downdemo.gitbook.io/cpp-concurrency-in-action-2ed/

6.2 多线程与多进程

6.2.1 Threading In C++

学习自:

https://www.youtube.com/watch?v=eZ8yKZo-PGw&list=PLk6CEY9XxSIAeK-EAh3hB4fgNvYkYmghp&index=4

7. C++ 惯用法

你最喜欢的 c++ 编程风格惯用法是什么?

8.学习课程

8.1 极客时间《现代 C++ 实战 30 讲》

9.工具篇

9.1 容器快捷输出工具

对吴老师的代码进行了修改,点击此处直通代码

输入:

map<int, int> mp{
            {1, 1},
            {2, 4},
            {3, 9}};
    cout << mp << endl;

输出结果显示:

{ 1 => 1, 2 => 4, 3 => 9 }

9.2 像 Python 一样简单输出(Jupyter Notebook)

9.3 观察编译过程变化

9.4 C++ 的 Debug 工具 dbg-macro

9.5 在 Linux 上的 Debug 工具 rr - 拥有回到过去的能力

10.拓展部分

10.1 一些问题

11.贡献者

贡献人 地址
光城 https://github.com/Light-City
ChungZH https://github.com/ChungZH
xliu79 https://github.com/xliu79