C++基础学习
2015-09-11 11:37
281 查看
9月8日-11日
走马观花的跑完了《C++面向对象程序设计》,有了基本认识。
翁恺《面向对象程序设计》笔记
什么是对象-面向对象的基本原理
头文件(.h)
成员变量-成员变量的秘密
构造函数和析构函数
对象的初始化(initialization)
new & delete ;new[] & delete[]
-在C语言中通过malloc来动态分配内存,在C++中通过new来分配内存,实际上与C的实现方式没有区别。
-C++中,数据在计算机中的存储地点:
-1.栈(stack)用来存放本地变量,在函数内部
-2.堆(heap)new出来的数据
-3.全局数据区:存放全局变量,静态变量,静态成员变量
-C++中,获取数据也是去这三个地方获取,因而C++是一种比较复杂的语言。
访问限制
初始化列表,调用之前通过初始化列表进行initialization
对象组合,composition 组合成为一个新的对象
-另外一种建立新的object的方式是通过继承的方式,构建新的object,鸡蛋心和鸡蛋清的模型-子类比父类具备更多的属性,子类构建的对象比父类构建的对象
具备更多的属性。
继承-子类父类关系,子类可以被当成一个父类来看待,upcast ;父类被当成子类来看待,downcast,但是不一定是正确的;鸡蛋模型,子类包含了比父类更多的特性
函数重载和默认参数()
内联函数,为了提高运行速度采用内联函数,因为调用函数需要开支
const 指针的关系不变,而不是说指向的元素不变,与static静态变量有区别,static是在内存中的地址不变
不可修改的对象
引用“&”,本质上是一种指针,与java语言的区别。
向上造型
多态性
拷贝构造
静态对象-静态成员,放在全局变量区
运算符重载
基本规则。原型。赋值。类型转换
模板template
异常的基本概念,异常的抛出和捕捉,异常语句,底层发现的异常向上抛出,给到上面做处理。
open file
determine its size
allocate that much memory
read the file into memory
close the file
流的概念-流的运算符:流是一维的
STL简述:
why should I use STL?
Reduce development time
Code readability
Fit more meaningful stuff on one page
Robustness
-STL data structure grow automatically 标准库的数据结构可以自动增长
Portable code 可移植
Maintainable code 可维护性
Easy 容易
Vector List deque sets集合 Maps(映射,键值对) basic算法比如sorting
-采用了模板和重载两种方式,本质上,容器是一种类class。
后续需要跟的课程:翁恺《C语言》《C语言进阶》
走马观花的跑完了《C++面向对象程序设计》,有了基本认识。
翁恺《面向对象程序设计》笔记
什么是对象-面向对象的基本原理
头文件(.h)
成员变量-成员变量的秘密
构造函数和析构函数
对象的初始化(initialization)
new & delete ;new[] & delete[]
-在C语言中通过malloc来动态分配内存,在C++中通过new来分配内存,实际上与C的实现方式没有区别。
-C++中,数据在计算机中的存储地点:
-1.栈(stack)用来存放本地变量,在函数内部
-2.堆(heap)new出来的数据
-3.全局数据区:存放全局变量,静态变量,静态成员变量
-C++中,获取数据也是去这三个地方获取,因而C++是一种比较复杂的语言。
访问限制
初始化列表,调用之前通过初始化列表进行initialization
对象组合,composition 组合成为一个新的对象
-另外一种建立新的object的方式是通过继承的方式,构建新的object,鸡蛋心和鸡蛋清的模型-子类比父类具备更多的属性,子类构建的对象比父类构建的对象
具备更多的属性。
继承-子类父类关系,子类可以被当成一个父类来看待,upcast ;父类被当成子类来看待,downcast,但是不一定是正确的;鸡蛋模型,子类包含了比父类更多的特性
函数重载和默认参数()
内联函数,为了提高运行速度采用内联函数,因为调用函数需要开支
const 指针的关系不变,而不是说指向的元素不变,与static静态变量有区别,static是在内存中的地址不变
不可修改的对象
引用“&”,本质上是一种指针,与java语言的区别。
向上造型
多态性
拷贝构造
静态对象-静态成员,放在全局变量区
运算符重载
基本规则。原型。赋值。类型转换
模板template
异常的基本概念,异常的抛出和捕捉,异常语句,底层发现的异常向上抛出,给到上面做处理。
open file
determine its size
allocate that much memory
read the file into memory
close the file
流的概念-流的运算符:流是一维的
STL简述:
why should I use STL?
Reduce development time
Code readability
Fit more meaningful stuff on one page
Robustness
-STL data structure grow automatically 标准库的数据结构可以自动增长
Portable code 可移植
Maintainable code 可维护性
Easy 容易
Vector List deque sets集合 Maps(映射,键值对) basic算法比如sorting
-采用了模板和重载两种方式,本质上,容器是一种类class。
后续需要跟的课程:翁恺《C语言》《C语言进阶》
相关文章推荐
- C++学习笔记1(带参数的main( )函数)
- Effective C++ 条款42 了解typename的双重意义
- C++数组名的思考
- 【C++拾遗】 explicit关键字
- C++/CLI中MFC与.NET的互操作
- 大数求余
- C++友元函数和友元类
- C++容器使用经验总结
- 第二周上机实践—项目1—C/C++语言中函数参数传递的三种方式
- c语言-位运算
- effectiveC++
- Effective C++ 条款41 了解隐式接口和编译期多态
- 在C++中子类继承和调用父类的构造函数方法
- 【C++】智能指针auto_ptr简单的实现
- C++继承
- Socket通信原理探讨(C++为例)
- 【C语言】关于结构体最后的长度为0或1数组的思考
- Effective_C++_条款三十三:避免遮掩继承而来的名称
- C++Primer第五版 3.5.1节练习
- Effective C++ 条款40 明确而审慎地使用多重继承