C++简介 为什么学习C++语言?

提示:C++学习记录DAY1

文章目录

前言

一、C++的优点?

1.包容性,向前兼容

2.数据封装和隐藏

3.支持继承和重用

二、为什么难学?

1.C++支持的编程范式(paradigm)

2.值语义与对象语义

3.functional/bin库

三、值得学习的新特性

四、开发工具的选择

总结


前言

  在科技高速发展的今天,计算机已经成为人们工作生活中不可或缺的一部分。C语言是目前最常用亦是最古老的编程语言之一,而C++是一种计算机高级程序设计语言,C++既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计。 

一、C++的优点?

  C++一方面可以与C兼容,可以之间系统底层API SDK,另一方面提供了更多范式,足够的抽象能力。C++能提升性能,C++之父Bjarne Stroustrup戏称C++可以减轻全球变暖问题编程语言的需求总结为四个:效率(efficiency),灵活(flexibility),抽象(abstraction),生产力(productivity)。C语言注重前两者,C++注重前三者,JAVA、.net这些注重后两者。C++应用范围极为广泛,例如一些浏览器、播放器。

1.包容性,向前兼容

  C++与C语言完全兼容,C语言的大部分内容可以直接用于C++的程序设计,用C语言编写的程序可以不加修改地用于C++。

2.数据封装和隐藏

  在C++中类是支持数据封装的工具,对象则是数据封装的实现,C++通过建立用户定义类支持数据封装和数据隐藏。

3.支持继承和重用

  继承和重用的思想:在C++现有类的基础上,可以声明新类型。也就是说继承允许我们基于一个类来定义另一个类,这使得创建和维护一个应用程序变得更容易,也达到了重用代码功能和提高执行效率的效果。通过继承和重用可以更有效地组织程序结构,明确类间关系,并且充分利用已有类去完成更为复杂、深入的开发。新定义的类为子类,成为派生类,子类可以从父类继承,将所有非私有的属性和方法作为自己的成员。

二、为什么难学?

1.C++支持的编程范式(paradigm)

  • 过程式(procedual)
  • 数据抽象(data abstraction)
  • 基于对象(object-based)
  • 面向对象式(object-oriented) (封装、继承、多态)
  • 函数式(functional) (LISP)(递归)
  • 泛型形式
  • 模板元形式(是指给出代码的产生规则,让编译器产生新代码实现我们预期的功能,某些工作被提前到编译期完成,从而增和了编译时间间,但提高了运行效率。)

2.值语义与对象语义

  • 值语义可以拷贝与赋值对象语义不可进行拷贝与赋值

3.functional/bin库

三、值得学习的新特性

  • 智能指针如shared ptr、weak ptr等
  • rvalue reference;右值引用
  • function/bind;摆脱面向对象的一些束缚
  • lambda expression and closure 更好的实现函数式编程

四、开发工具的选择

  GNU g++与和微软Visual C++。


总结

   以上就是今天C++学习的内容,本文仅仅简单介绍了C++的意义、特性。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值