不到断气不罢休 发表于 2025-4-4 02:37:22

如何快速上手C++ ?



https://i-blog.csdnimg.cn/blog_migrate/103ed7a063624897488a2cb04f1f8c56.png
0.导语

《C++那些事》开源项目目前2.9W star,这个项目是我在研一下,研二上谁人阶段整出来的,其时目的就是为了满足本身找工作的需求而写的,所以各人如果找工作看我的C++那些事,是非常有帮助的!

本文呢,就是对C++那些事的详细阐述以及阐述每一块怎么学,我是怎么学的,C++那些事将来要做什么,以及面试重难点,职业发展等。
公众号已发表原创498篇,即将破500,哈哈!
https://i-blog.csdnimg.cn/blog_migrate/d57579cdfd87e7d62672d5a11f971fa6.jpeg
这里再给各人分享一下那些事的公众号专栏入口!点击下面文字即可访问。
《C++那些事》专栏

https://i-blog.csdnimg.cn/blog_migrate/bbd68a48f4357424448e970f507e54df.jpeg
C++那些事项目地址:
   https://github.com/Light-City/CPlusPlusThings
    1.入门

看书/学校课程学习,一般就上课用的书大概比较经典的很厚的谁人C++ Primer,个人不太推荐看这个书,不过如果在校学生学习的话,研读这本书照旧蛮好的。
本人入门Cpp是在研一下,详细的内容对应《C++那些事》的第二部分《实战系列》,其中的大多数内容是我在预备考试阶段学习到的,如果你是一个在校生,这一块也是非常不错的,如果是入门选手,更是宝贵的学习资料。
随后,推荐以下几本书:
   https://book.douban.com/subject/1842426/
    《Effective C++》 豆瓣评分 9.5分
着实,看完上述这本书对于敲代cpp代码是有一定的感觉的,如果你是边学习边训练的话,肯定入门了,否则那再来一遍吧。
这一块可以对应C++那些事的十日狂练。

重磅通知:十日狂练升级版已在星球更新,目前已开更,有对应题目加代码讲解,以及涉及知识点回顾。非常适合新手实战学习。
如果想要参加星球的,可以扫下方二维码领取优惠劵哦,目前定价120,领取后101可拿下,后续每参加20人涨价50。

https://i-blog.csdnimg.cn/blog_migrate/85a81a7f4b0fae5f3f64863981539454.png
2.新特性

如今用的比较多的是C++11版本,固然面试过程或多或少会问一些,虽然如今也有14/17等,但是面试以及现实工作中用处不太多。比方:nullptr与null、0的区别? 怎么初始化?常常会被问到,这一块的内容对应于我的《C++那些事》当中的C++2.0新特性,这一块的学习我是根据侯捷老师的b站课程(堆栈上学习资料可见)以及后面推荐的册本学习的。
强烈推荐下面这本书的英文原版!我个人是看了一遍,收获很大的!
   https://book.douban.com/subject/25923597/
    《Effective Morden C++》豆瓣评分9.4分
涉及这一块的代码,各人可以跟我的C++那些事代码库一起码起来。
这一块对应的热点面试题:智能指针,左值与右值。
3.面试及进阶

这里我将面试与进阶放到了一块是因为,你如果预备面试,光掌握上述的知识点还远远不够,而进阶的同时又是与面试知识息息相关,因此放到了一块。
1.这一块我强烈推荐各人学习C++那些事项目中的基础进阶部分,这一块的内容既是基础,也是面试常考点!就跟考试一样,高考考的都是一些很基础的东西,基础不牢,地动山摇。在基础的之上,你该思量上一层楼了,此时就是我本身研究了2个月的STL源码,源码对应版本是gcc4.9.1,我本身花了2个月时间,每天抽一点时间,将STL的源码举行了剖析,每一部分都有文档即代码,算是非常详细了,这一块的内容是我C++那些事的焦点!非常非常重要!对应的热点面试题:vector内存增长方式?map底层数据结构?
2.面试还会观察设计模式,设计模式通常有些晦涩难明,代码复杂,如果语言基础不牢固,大概会绕晕,因此这一块的东西,请选择重点的部分学习,比方:单例模式、工厂模式。这两种是面试的热点,可以先学习一下,此处对应于C++那些事第四部分设计模式。
3.最后,可以看看一些并发编程相关的内容,现实上面试观察的不多!但是观察的却通常是操纵体系相关的内容,比方:多线程、多历程,历程通讯,线程通讯。
4.基础素质

上述4大部分是你去学习C++入门及进阶的必走之路,cpp学习是一条苦海之路,你需要一些过硬的基础素质,这些在上述是没有提到的,下面逐一列举。此处对应于Linux C++背景开发职员。


[*]Linux基础

[*]基础命令:比方:ls,cd等
[*]vim使用:查找、替换、删除等
[*]网络故障排查及抓包:比方:netstat、tcpdump等
[*]Gdb调试、Gcc/G++


[*]操纵体系

[*]历程
[*]线程
[*]锁

[*]数据库(Mysql、Redis)

[*]Mysql事务
[*]Redis底层原理

[*]服务器

[*]Nginx特性

[*]云部署

[*]Docker
[*]K8s (非必须)

基础素质这一块,将会在《C++那些事》将来参加,期待各人长期关注本项目!
5.工作发展

此处仅仅代表我的个人职业看法,许多人对C++找工作不解,不知道就业有什么岗位,这里我推荐几个。


[*]音视频开发
[*]背景开发
[*]Qt开发
[*]AI底层开发
[*]驱动开发
[*]数据库

下面是之前分享的ppt页面,也share出来。

https://i-blog.csdnimg.cn/blog_migrate/272d8eb26ad41063cb47e02744b010e3.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 如何快速上手C++ ?