自学C++编程,需要学到什么样的程度才可以工作?

自学C++编程,需要学到什么样的程度才可以工作?

我本科 + 研究生期间一直学的是C/C++技术栈,均于某中流985 CS就读。

校招时也拿到过不少互联网大厂的实习offer和正式offer,现在依然在从事Linux C/C++的开发工作,以前在百度搬砖,现在在字节从事C++技术栈的开发。

在百度实习的时候受导师影响,开始分享一些我的计算机学习经验,

慢慢的把自己的学习经验和学习资源等开源在github以及码云平台上。这是我已经分享出来的内容:

分享这些内容不求什么回报,只希望你先双击一下屏幕点个赞、感谢与收藏~

一是当做对我继续分享计算机学习、编程知识的鼓励,

二是作为你大步流星的往前走,是你进步的开始见证,

三是下次想再看这么好的汇总和整理,却找不到这个回答了。

我学习C语言和C++基本都是自学的,都是通过一些看的视频+各种书籍学的,或者直接说的夸张点,计算机基本都是靠我自学的。。。

这是我以前面试百度时的面经总结

再来分享一下自己学习C/C++的经验,之前为小白写了一份C/C++语言入门的万字总结,

韩飞宇:熬夜整理的C/C++万字知识总结(一)

韩飞宇:熬夜整理的C/C++万字知识总结(二)

韩飞宇:熬夜整理的C/C++万字知识总结(三)

韩飞宇:熬夜整理的C/C++万字知识总结(四)

韩飞宇:熬夜整理的C/C++万字知识总结(五)

这是一份涵盖大部分 C++ 程序员所需要掌握的知识。入门、进阶、深入、校招、社招,准备 C++学习 & 面试,首选CppGuide!

目前已经开源在了github上,如果你因为网络等原因无法访问github,我在国内的码云也放了一份,同样可以供你学习C/C++!

github开源地址:https://github.com/GrindGold/CppGuide

码云开源地址:https://gitee.com/grindgold/CppGuide

C++学习笔记

阿里云大学的这个入门课程不错,总结的相当可以,甚至包括最开始如何进行环境搭建都给你介绍到了。

绝对属于小白向的教程了。

推荐先看黑马c++的基础篇以及第四章节的入门书籍推荐再看侯捷老师的系列书籍以及并发编程等书。

离线版资源

秉着好东西不藏私的原则分享出来!我把自己学习计算机八九年以来的书籍分享出来了,最后汇总开源成为一个计算机经典编程书籍仓库了。

如果对你有用可以点赞支持一下我!后续会继续分享一些计算机学习的编程资源!

其中包括经典大黑书、编程电子书、电子书、编程书籍,包括计算机基础、C/C++、Java、Python、面试题、架构设计、算法系列等经典电子书。

目前已经开源在了github上,如果你因为网络等原因无法访问github,我在码云也放了一份,同样可以供你学习编程!

github开源地址:https://github.com/GrindGold/pdf

码云开源地址:https://gitee.com/grindgold/pdf

《C++ Primer中文版》本书面向 C++ 语言的初学者,是一本很友好的自学教材。

作者把 C 语言的基础概念和需要注意的编程细节说得很清楚,并且例程和习题丰富,相信认真读过之后,可以完成 C 语言入门这个目标。

当然了,你也可以选择Essential C++中文版,但我还是推荐Primer这本书。

《Essential C++中文版》是一本内容不多但很实用的 C++ 入门书籍,强调快速上手与理解 C++ 编程。

你不只学到 C++ 的函数和结构,也会学习到它们的设计目的和基本原理。

《高质量程序设计指南》,这本书看得比较过瘾,书里面有一些编程规范的东西,对于写程序的人来说,还是不错的,可以培养好的编码习惯,加深了一些知识的巩固。

比较实用,也适合面试前看看。

《STL源码剖析》详细地了解 STL 的底层实现机制,同时也可以对常用数据结构,C++ 内存管理拥有更深的理解。

《More Effective C++(中文版)》,该书围绕55条准则每一条都介绍了一个可让你写出更好的C++程序代码的方法,并以特别设计过的例子详加讨论。

《提高C++性能的编程技术》,本书认为 20% 的性能缺陷将会占用我们 80% 的时间。

因此我们把精力集中在最有价值的地方。本书详细讨论了临时对象、内存管理、继承、虚函数、内联、引用计数以及 STL 等一切有可能提升 C++ 效率的细节内容。

无论你是相关领域的从业人员,还是 C++ 程序设计爱好者,或者是渴望突破编程瓶颈、大幅提升自我修为的程序设计爱好者,本书都必将使你获益良多。

《C++ Templates中文版》,深入了解现代 c++ 模板的实用书籍。

本书不仅是对 C++ 模板的权威解释,而且本书还深入地介绍了其他一般的 C++ 思想。

《C++标准库(第2版)》、《C++并发编程实战》、《C++编程思想(两卷合订本)》等,介绍的这些书我都买了。

后面的几本都是泛泛的看了下,当作工具书,毕竟已经快入土了。

一款轻量级且高性能的日志库,作者armink,EasyLogger 是一款超轻量级、高性能的 C/C++ 日志库,非常适合对资源敏感的软件项目。

目前EasyLogger支持以下功能:

项目地址:https://gitee.com/Armink/EasyLogger

struct2json 是一个开源的C结构体与 JSON 快速互转库,它可以快速实现 结构体对象 与 JSON 对象 之间序列化及反序列化要求。快速、简洁的 API 设计,大大降低直接使用 JSON 解析库来实现此类功能的代码复杂度。

项目地址:https://gitee.com/Armink/struct2json

encentOS tiny的内核确实是非常非常小巧,最少资源占用为RAM 0.6KB,ROM 1.8 KB。

TencentOS tiny主要由一个轻量级RTOS内核+多个物联网组件构成,这是他们团队自主研发的RTOS,源码非常简单易懂,源码作者以非常清晰的逻辑实现了整个内核。

在 C++ 的学习过程中离不开阅读大量的免费文档和网站,尤其是学完 C++ 基础后,不知道自己下一步要干什么。

我在学习 C++ 的过程中学习总是卡在某些地方,这时候阅读一些免费的文档与浏览一些网站,过掉这些障碍,C++ 学习之路会顺畅很多,今天在此分享一些我当初用到的学习文档和学习网站,希望对你们有所帮助。

首先分享一份当初我自己用到的C++开发手册。

一个优秀的 C++ 学习网站,除了提供相应的教程之外,还有一个很棒的论坛。和其它网站相比,它的价值更多体现在参考上,因为里面解释了许多编程概念。

345 个比较全面的关于 C++ 的源代码清单

C++ 常见问题,项目工程中遇到的很多问题都有,涉及 C++ 高效编程

身为过来人实在想说一句:学习计算机一定不要想着速成,这行是没有什么捷径和超能力的。

要下苦功夫去啃那些经典书和源码,然后自己动手写,所有技术大佬都是一行行代码敲,一本本书啃出来的。

如果有计算机学习、校招求职、考研、读研感兴趣的小伙伴也可以关注,一直致力于分享计算机学习、校招相关、硬核技术等,让你们少走弯路!