[C++学习笔记01]C++介绍

  1. 为什么学习C++?

    因为 Performance per $,也就是说performance 就是钱,这个分成三个方面:

    • 耗电,芯片的耗电量,移动设备的耗电量,家用电脑的耗电量都和钱有关系。
    • 资源,家用电脑和移动设备上的处理器资源有限,因为要让一般消费者买的起。
    • 体验,在更小的设备上会有更好的体验,有更好的体验就可以挣更多的钱。
  2. 各大编程语言聚焦
      C语言:效率,灵活。
      C++语言:效率,灵活,抽象。
      JAVA/C#:抽象,生产力。
  3. C++支持的编程范式(paradigm)
      过程式(procedual):常规的C语言的编程范式。
      数据抽象(data abstraction):数据结构中的ADT,封装强调的是值语义,隐藏并暴露接口。
      基于对象(object-based):不提供抽象、继承、重载等有关面向对象语言的功能。而是把其他语言创建的对象统一起来,形成一个对象系统,以供使用。
      面向对象式(object-oriented):程序 = 对象 + 对象 + 对象 + 消息传递,只有对象内部才能使用该行为,外部对象无法使用,封装(强调对象语义)、继承、多态。
      函数式(functional):Lisp,Erlang这类语言,一切皆函数,没有for循环,全部采用函数递归的思想。
      泛型形式:程序 = 对象 + 对象 + 抽象行为,抽象行为能施加到不同类型而又大相径庭的对象之上,是一种通用的编程思想。
      模板元形式:给出代码的产生规则,让编译器产生新代码实现我们预期的功能,某些运行时工作被提前到编译期来完成,增加编译时间提高运行效率,可以做神奇的类型推导。
  4. C++值得学习的特征
      智能指针如shared_ptr、weak_ptr等
      rvalue reference;
      function/bind;
      lambda expression and closure(函数闭包).

转载于:https://www.cnblogs.com/ifpelset/articles/4505370.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值