c++程序员的十年编程功底你能接几成?

  前言:(c++入门干货分享 )

1.书籍推荐:《C++ Primer 第5版》-> 《Effective C++》 ->《Effective stl》 -> 《STL源码剖析》-> 《深度探索C++对象模型》

2.学习网站: 推荐  www.learncpp.com   (比较完整的入门

常用的函数网站推荐: http://www.cplusplus.com 

自我介绍:

大家好,我是无妨的小智,一家上市互联网公司的c++软件开发工程师,学习c++编程有接近五年的时间。

从事的代表性产品是Filmora,国内版万兴喵影,类似国内的字节剪映,目前主流的短视频行业。

产品在海外用户量上百万级别。热爱分享一些实用的c++编程知识,希望能够给正在学习c++的你提供一些帮助。立志于输出有自己风格和实用的知识博主

c++几条实用编程经验--几个不成文的规矩

目标:提供c++基本用法在软件系统的正规用法,打开背后成因,解法及牵扯思之门。

c++用法的几个架构意识:

意识一:c++是一个大杂烩,类似一个联邦政府。

c++可以看成面向过程c语言(1)的加强版,提供面向对象(2)的特性,同时提供便捷的STL模板库(3),又集成泛型编程(4)的力量,实现百家齐放的效果,但每一个类别中的学习模式自成一套,这样理解起来就更方便。

意识二:面向对象的c++,尽可能模拟现实世界的运行模式。

类的big five(构造函数,析构函数,赋值函数,拷贝构造函数,拷贝赋值函数),涵盖了类的出生和死亡,彻底内化类的前因后果才能再使用的时候过更加的心应手。

意识三:用对象的方式管理资源能避免各种奇葩问题。

在企业常听到的就是,这里又发生线上奔溃了,怎么你又忘记释放资源了,导致资源泄露了呀。以至于企业里很多都会封装自己的类包裹器,借用类的生命方式管理资源,也就是常说的RAII,资源获取的时候就是资源初始化的时候。

意识四:采用标准库的思维来设计自己的接口和类。

我们常用的int 、double、string其实看来也就是一个类,和我们自己定义的一个class也一样,无非就是内置类型是官方人员书写的标准类型,考虑的情况更加的充分,各种场景都给予足够的思考。因此很多人愿意花时间去研读源码,从中吸取更多的精华力量。我们平时编写代码也可以往这个方向多多思考,向标准看齐,也许你也能妙笔生花,同时站在巨人的肩膀上,能避免很多测试->研发->线上测量等循环的冗余事项。

意识五:具备面向对象的思维。OOP设计。

想要学好c++,那么对于面向对象的思维模式是必须掌握的技能。

总的来说,就是四个方面,抽象封装继承多态

如果要简短描述一下的话,就好比我们设计了一个类,用来模拟现实世界的事务。

(1)其中抽象就是我们只要相关的,我们只需要实现我们软件和业务相关的一些行为就可以。

(2)封装的话,结合我们几个使用的关键字,private,protected和public就可以将我们的行为和变量根据需求进行合理的分类。对外只要暴露需要的

(3)多态则是具备多面的,最常见的就是相同的接口或基类对象,在不同的子类中会有不同的实现形式。比如在客户中引用基类动物的指针或引用,同一个行为在不同的子类对象又不同的表现形式。

(4)继承是具备复用的。对于程序盈利,最重要的莫过于时间和成本,能在短时间占据市场这就是很大的优势所在,所以要实现代码复用就是很重要的技术,而继承则可以在一定程度上实现这种效果。

意识六:模板真的是一个简短强大的高端玩意儿~

想要学好模板,建议先把前面的基础弄得扎实后,再好好研读STL源码解析,好好享受知识的盛宴。

这次主要给大家想要书写优美的c++代码,先搭建几个宏观的意识理念。

下次和大家详细谈谈每个意思中需要的一些细节手法。

例如:规矩一:要想使用对象,就得保证对象一定已经被初始化了

我是热爱学习,热爱分享的小智。

不知不觉,篇幅也有一定长度了,避免咋们视觉疲劳,想听详细分享,砸们下回再见诺~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值