C++ Primer Plus 第01章 预备知识 学习笔记

第一章 预备知识

1、C++简介

C++融合了3种不同的编程方式:

  • C语言代表的过程性语言
  • C++在C语言基础上添加了类代表的面向对象语言
  • C++模板支持的泛型编程

C++继承C语言高效、简洁、快速和可移植性的传统。

2、C++简史

2.1 C语言编程:过程性语言

Bell实验室的Dennis Ritchie为了设计开发UNIX的通用性、可移植性等,在旧语言的基础上开发了C语言。

汇编语言依赖于计算机的内部机器语言,直接对硬件进行操作。

数据:程序使用和处理的信息。

算法:程序使用的方法。

C语言是**过程性语言**,强调编程的算法方面。一种结构化的编程方式。

C语言的新原则:自顶向下设计,理想:将大型程序拆分小型、便于管理的任务。

2.2 面向对象编程

过程性语言(C语言)强调算法OOP(C++、Java等)强调数据

OOP不像过程性编程,其理念是设计与问题的本质特性相对应的数据格式。区别如下:

  • 过程性语言(让问题来满足语言)
  • OOP编程(让语言来满足问题)

类规定了可使用哪些数据来表示对象以及可以对这些数据执行哪些操作。

OOP程序设计方法:先设计类(可以明确表示程序要处理的东西),然后设计使用类的对象的程序

低级组织(如类)高级组织(如程序)的处理过程叫作 自下而上 的编程思想。

OOP可以创建可重用的代码,减少大量的工作,信息隐藏可以保护数据,使其免遭不适当的访问。

2.3 C++和泛型编程

泛型编程(generic programming)是C++支持的另一种编程模式。与OOP目标系统。

术语:泛型(指创建独立于类型的代码)

OOP与泛型编程的区别:

  • OOP强调编程的数据方面,是管理大型项目的工具
  • 泛型编程强调独立于特定数据类型,提供执行常见任务(如对数据排序或合并链表)的工具。

3、可移植性和标准

3.1 可移植性的两个障碍
  • 硬件:分块放置模块,通过重写模块,最大限度降低可移植性问题。
  • 语言上的差异性:国际组织定义了C语言标准、定义了C++99、C++11、C++14等标准。

4、程序创建的技巧

4.1 编程步骤

更多编译细节请阅读【编译原理】

在这里插入图片描述

4.2 常见的编译器
  • Linux/UNIX : GNU gcc/g++
  • Windows :软件IDE
  • Mac OS : Xcode自带g++和clang

记录学习《C++ Primer Plus》第6版的过程,打卡记录让自己坚持学完整个内容。

课程笔记地址:https://github.com/SolerHo/cpp-Primer-Plus-6e-Notes/blob/master/Chapter01/README.md

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员小何同学

不需要打赏,关注公号即可

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值