课程
浙大翁恺老师的面向对象程序设计-C++
理由
因为我是翁大大的小迷妹啊!(/∇\)从翁老师的C语言课程中受益匪浅,便找来了他的C++课程。一共41课时,所授内容清晰。最长的一节课也控制在三十分钟左右,便于时间安排。虽非零基础教学,但从评论看来,学习过C语言听懂这门课并不吃力。无法理解的地方会配以搜索引擎,以求所授内容能消化吸收。
计划
从今天(2.7)算起至寒假结束(不含3.3)共计24天时间,平均每天看两个课时即可。在此粘贴课程目录,学习完成之后会在标题之后打勾并稍做笔记。
- 第一个C++程序 √
终于弄清楚了vs2017,可翁大大用的是Eclipse啊啊啊啊啊,听了半节课我一脸懵。但是也学到了一些小技巧(假装
比如rename(重命名变量名),vs也有这个功能。
也写出了第一个C++程序hhhhh。主要是基本的输入输出语句。cout和cin - 什么是对象 √
Object is variable in programming languages.变量=对象
On the other hand,Objects=Attributes+Services(对象=属性+服务)
C语言中的一组代码
typedef struct point3d{
float x;
float y;
float z;
} Point3d;
void Point3d_print(const Point3d* pd);
Point3d a;
a.x=1;a.y=2;a.z=3;
Point3d_print(&a);
C++版本
class Point3d{
public:
Point3d(float x,float y,float z);
print();
private:
float x;
float y;
float z;
};
Point3d a(1,2,3);
a.print();
结构(C中)≈类(C++中)
这堂课主要解决了“什么是面向对象”的问题//说实话,看了很多材料我还是有点懵(;′⌒`)
//突然发现郭炜老师在中国大学mooc的课程程序设计与算法(一)所用语言是c++,他说“因为暂时不写大程序,因此不用关心‘面向对象’”(这不是我的借口)
//结合两个视频一起看吧嘻嘻嘻嘻(感觉郭炜老师课程中一些编程语句还是用C语言的(就第一节课中的输入输出语句来说
面向对象基本原理 √
第一个概念:对象(Object)——实体(具体的)
第二个概念:类(Class)——概念(定义属性)OOP的五个原则
more details click here- 自动售票机例子 √
- 头文件 √
- 时钟的例子 √
- 成员变量√
- 成员变量的秘密√
- 构造与析构√
- 对象初始化√
- new&delete
- 访问限制
- 初始化列表
- 对象组合
- 继承
- 子类父类关系
- 函数重载和默认参数
- 内联函数
- const
- 不可修改的对象
- 引用
- 向上造型
- 多态性
- 多态的实现
- 引用再研究
- 拷贝构造1
- 拷贝构造2
- 静态对象
- 静态成员
- 运算符重载——基本规则
- 运算符重载——原型
- 运算符重载——赋值
- 运算符重载——类型转换
- 模板1
- 模板2
- 异常基本概念
- 异常的抛出和捕捉
- 异常语句
- 流的概念
- 流的运算符
STL简述