本文是系统学习 郑莉c++第五版+b站视频的学习笔记。 郑莉老师b站内容分为 导学
第0章:学习怎么学习–论道开篇+怎样学c++
论道开篇
你会学习吗?  学生问题过于真实。 学生问题: 首先就是1.看书枯燥。看书不会。 ????2.例题会,程序不会。考试过,程序不过。 哈哈,老师说了 看书枯燥原因是还没入门,所以枯燥,因此每章都加个导学,带着入门,讲讲每章该怎么学。好! 看书不会是因为每章都有重点难点,郑莉老师会带着学,包括实践环节怎么训练。只能说nice。  总结下 首先就是靠零零碎碎的学是学不会的,必须系统。 第二个就是要多写程序,还得写大程序。 第三就是不要急,系统学习就不要急,慢慢学,慢慢学也是不慢的。
总结下就是跟着我慢慢学,多写程序,保证ok。
怎样学c++
 自学最主要的就是很难坚持,学着学着就学不下去放弃了。  老师强调理科学习一定要学完整的课,零零碎碎的看几十个小时也是没用的,反而浪费时间。 代码分为例题和实验,要多做例题和实验。  预习对学习是至关重要的,学生不喜欢预习往往是不会预习。 预习应该是简单,轻松,有趣的。 老师比喻,预习就好像跟团旅游,出发前导游提前给你报点让你准备什么,路上有什么风景。 预习只需要几分钟就够了,像那种几小时的就不叫预习了,叫学习了,深以为然。  听课最主要的是继续和记笔记,你可能会不懂,也可能懂,但都不要停下来,最主要的就是继续。不懂的记笔记。
 复习最重要的就是当天复习,通过复习可以解决我们听课不懂的疑问。并加以练习巩固。 通常,我们把复习和练习一并进行。  还要写复习笔记。复习笔记就是解决听课过程中问题的笔记。
 练习至关重要。 一定要做练习,如果没有做练习,则不能进入下一章。 学不会往往是因为前面的还没学会,则新知识涉及的旧知识和新难点就很然前进。 例题,实验,习题。  一旦延迟就及时忘掉。多调整。 跟着例题做,会做例题了就代表本章可以,就继续前进
第1章绪论 导学笔记(学堂在线+b站)
学堂在线
本章是对计算机的初步了解。
1.计算机系统

1.0 由硬软组成
1.1 还有指令系统,是硬软的中间件
指令系统是cpu提供的二进制指令集。
2.计算机语言
2.0 计算机语言
 计算机语言是人类和计算机沟通桥梁,告诉计算机解决问题的方法和数据,让计算机去计算。
2.1 语言级别
 由低级到高级。低级语言与我们自然语言差距最大,高级语言差距越小。
2.2 c++是面向对象的高级语言
将事物看作对象,同类对象形成类,类封装细节只对外暴漏接口,对象间通过消息进行通信。
3.程序设计方法

基于过程
基于对象
泛型
4.程序开发过程(针对初学者,了解就行)
 计算机只会计算,我们自己需要先知道怎么计算,通过计算机语言将计算方法告诉计算机,替我们计算。所以第一步是算法设计。再用计算机语言描述算法。
5.信息的存储与表示 (了解就行)
信息的二进制表示
6.本章要求
 教学视频至少一遍,不懂的回头看。
第1章绪论 学习笔记(学堂在线)
1.计算机系统
1.1 计算机硬件
 1.cpu只和内存打交道 2.所有外设都通过内存和cpu打交道
1.2 计算机指令系统
指令系统:计算机硬件所能识别的所有指令的集合。 计算机软件都将被翻译为指令。
1.3 计算机软件
软件 = 程序 + 文档
0 系统软件
1 应用软件
2 中间件
提供系统软件和应用软件的连接。
2.计算机语言
低级到高级(抽象层次)
语言越来越复杂,抽象层次从低到高,越来越接近人类语言,使程序员编写程序越来越简单 指令系统 - 机器语言 汇编语言 高级语言 c++语言 :支持面向对象,将客观事物看作对象,更符合客观思维。 
3.程序设计方法
程序设计指的是程序是什么
基于过程程序设计
软件由过程组成。程序员负责给定过程。 但复杂软件难以给定过程。同时,我们无法知道所有现象的过程。 
基于对象程序设计
软件由对象构成。对象之间通过消息通信 
泛型程序设计
之后在学
4.基于对象程序设计基本概念(重点)
对象
将现实中的事物看作对象。 在软件中进行模拟。 
抽象和分类
抽象出共同属性和行为的对象,叫做类。 分类所依原则:抽象 
对象的特点
封装
封装指的是封装起来,只留接口。 对象都是封装的,只留接口以供使用
继承
继承指的是继承+发展。有助于发展。 对象都是可继承的,通过改造和扩展已有类,提高代码重用,不需要从头开始写。
多态(?)
多态指的是人语说话中非常常见的现象,例如play pingpong。每种球的打法不一样,但我们不需要明确表示每一种打法,只用play即可。但此时也知道使用的是乒乓打法。从而只用play就可完成。是一种非常简便的方法。
5.程序开发过程

算法指的是归纳一类问题的解法。 连接指的是将程序中调用的其他模块连接在一起(二进制)
6.信息表示与存储
计算机只能做计算。  计算需要数据 
进制转换
R进制 与 十进制 的转换 R:表示 2 8 16
编码表示
二进制计算机能直接识别,为什么还需要编码呢  原码  补码 
实验一

第1章绪论 导学笔记(b站)
绪论是非常重要的,往往也是最难的,他是本书的精髓。往往学完整本书才能领会绪论的内涵。 绪论不是看一遍就看懂的,而是不断学习才能明白。 我们不能踏入两个极端。一是不注重绪论,二是过于注重绪论,因为绪论你是一时半会不明白的。  语法跟编译相关,我们不需要死扣语法。 我们的自然语法是复杂的,所以我们支持我们表达复杂逻辑。高级语法也是复杂的,所以类似。 低级语言语法是简单的,但相反,用低级语言表达同样逻辑却是更难的。 
 继承黑箱。  将不同子类当作同一类处理。  溢出与补码反码。
第2章简单程序(1) 导学笔记
1.给变量分配的空间一开始都是垃圾数据。 状态类似于擦黑板,不用了但是黑板没擦。 2.写程序把自己当成老板,对象就是手底下的员工,你用员工做什么。 3.不要关注语法,要关注这个语法能替我们表达什么。
第2章简单程序(1)
第二章是基础语法。 语法不是靠看一遍书就会熟练使用,而是反复的练习,不断使用。 快速过一遍即可。
标准io
基本数据类型和表达式
分为整数和浮点数。  初始化  等号不代表赋值,仅代表初始化的方式。 常量  const float pi = 3.14; constexpr float Pi = pi + 2; 初学者可以不用管constexpr
sizeof运算符
sizeof并不是函数  
算数运算
运算符的结果与类型有关。不同类型不同结果。 
逗号表达式

逻辑运算 短路特性
不要在逻辑运算中进行计算。
|