IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++学习之路(一) -> 正文阅读

[C++知识库]C++学习之路(一)

第一章:C++语言概述

前言:这里学习C++教材是选用的清华大学出版社的《C++语言基础教程》第二版,该版本语言较为通俗易懂,概念清晰,便于理解。因为之前学习过C语言,因此在学习本书之际,也是抱着一遍复习c语言,一遍深入学习C++原理,重点将“指针”、“面向对象”、“类和对象”、“继承性和派生类”、“多态性和虚函数”等概念深入理解,并多做习题巩固,多上机编程,提升代码能力。

同时配套的慕课有:学堂在线平台 清华大学 郑莉教授 C++语言程序设计基础(2021秋)

在这里插入图片描述

1.1 C++语言是一种面向对象的程序设计语言

什么是面向对象?面向对象与面向过程有何区别?

首先,我们先了解对象的概念,对象是软件系统的基本构成单位,对象是对客观世界中实际存在的某种事物的抽象,即:描述客观事物的一个实体。对象是一组属性和一组行为的集合,属性用来描述对象的静态特性,用若干数据表示;行为则描述对象动态特性,用若干操作表示,即数据与操作的集合。

而面向对象总体来讲则是:运用一些新概念和新方法构造系统的软件开发方法,这些新概念包括对象、类、封装、聚合、继承、多态性等,这些也体现了面向对象的特点。

面向过程:即以过程为中心的编程思想,主要的特点是模块化编程,比如:小明起床去学校,可以分解为四步流程:(1)起床 (2)穿衣 (3)洗脸刷牙 (4)去学校

面向对象则是将每个元素抽象成对象,对象有自己的属性,关注对象的行为,而并非这个事件。

同时面向对象有多种新概念,新方法需要理解:
1.类:类是一种类型,是对具有相同属性对象的描述,类是创建对象的样板,包含着所创建对象的数据描述和操作定义,类是一种具有共同属性、行为的若干对象的统一描述体。
分类是其主要特点。
2.封装:即将对象的属性和行为结合为一个封装体,其中,属性由若干不同类型数据组成,对象的行为由若干操作组成。操作是通过函数实现,又称为方法。
3.聚合:聚合是类之间的一种包含关系,一个复杂类可以由若干简单的对象组成,其中的方法成为聚合。例如:描述一架飞机,可以将飞机拆分为机翼、机身、机尾、发动机等多干部位。
4.继承:是创建新类的一种方法,继承用来解决一般类和特殊类的关系,其中,特殊类具有一般类的属性和行为,并且它还有自己特殊的属性和行为,这时称特殊类是对一般类的继承。
在软件开发中,可将已经开发好的类存放到类库内,开发新系统时,便可直接使用或继承使用已有的类。继承可以减少冗余性,提高重用性。减少编程工作量,提高编程质量。
5.多态性:即一对多的状态,一个函数名或同一个运算符对应于不同的实现或功能。

综上所述:面向对象的方法归纳以下几点:
(1):将客观事物中抽象出的数据和方法构成一个集合体,便是对象。
(2):将相同类型中对象抽象出共性,形成类。类具有封装性和隐藏性。
(3):类是一个封装体,类中多数数据只能通过本类的方法进行处理,这些数据在类外不可见,无法访问。
(4):类是通过外部接口与外界进行发生关系,这些外部接口提供了类的行为。
(5):对象之间通过消息进行通信。

1.2 C++语言对面向对象程序设计方法的支持

1.C++支持数据封装
2.C++语言的类中包含私有、公有和保护成员
3.C++语言中通过发送消息处理对象
4.C++语言中允许友元破坏封装性
5.C++语言允许函数名和运算符重载
6.C++语言支持继承性
7.C++语言支持动态联编

C++语言与C语言差别在于:C++语言是面向对象,而C语言是面向过程,C++语言在对C语言改进的基础上,又增添了支持面向对象的新内容。

1.3 C++语言的词法和词法规则

1.C++语言字符集
2.单词及词法规则
(标识符、关键字、运算符、分隔符、常量、注释符)
在这里插入图片描述

在这里插入图片描述
注:存放在内存中的字符串常量最后有一个结束符,即空字符,它用转义序列方法表示:‘\0’

1.4 C++语言程序结构特点

与C语言结构有部分不同,例如提取符:“>>”,插入符:“<<”,输入输出:cin>>(变量1)>>(变量名2)…;
输出操作:cout<<(表达式1)<<(表达式2)…;

下面展示C++语言的一个示范程序:

#include<iostream>
#include<cstdlib>
int main()
{
	double x,y;
	std::cout<<"Enter two float numbers:";
	std::cin>>x>>y;
	double z=x+y;
	std::cout<<"x+y="<<z<<std::endl; 
	system("pause") ;
	return 0;
 } 

运行程序,输入7.2 9.3 换行得到结果:x+y=16.5
如下图:
在这里插入图片描述

注:编译软件为dev c++ 或 visual c++

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-21 15:10:21  更:2021-08-21 15:10:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/19 6:34:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码