嵌入式每日学习心得2017.08.02
来源:互联网 发布:spss23 for mac破解版 编辑:程序博客网 时间:2024/06/03 20:49
类和对象:
对象:一辆车,树叶,一个人。
组成:属性,形为
对象的描述:一个对象的描述过程。
类:就是对象的一次描述
组成:成员变量,成员方法(函数)
类的三大特点:封装,继承,多态
定义类:
class 类名
{
限定符:
方法; //注意:限定区间是从此限定符开始,到下一个限定符结束
方法1;
变量1;
变量2;
限定符:
变量;
};
注:类只是对象的模板(没有分配存储空间的)
封装:将对象的成员对外界隐蔽方法
注:定义结构体类型:默认成员是对外公开的(公有的),
定义类类型,默认成员对外是私有的
1限定访问方式:类成员对外的访问的限定权限
公有(public):成员对外界公开
保护(protected):成员对外不可访问
私有(private):成员对外不可访问
2、将隐式信息进行非公有限定,如果类外需要访问,可以通过公有接口
对象:类的一次实例化
定义对象: 类名 对象名;
注:分配存储空间,只是分配成员变量,但共享方法
消息:(引用成员或变量)
只需要向一个对象发送一次指令,此对象收到指令时就可自行完成此指令事件.
对象.方法()
对象指针:
类* 指针对象;
对象指针->方法();
类外:在类的外部去引用成员
类内:在定义类的内部去引用成员
this:自指针(指向自身成员) (隐蔽指针:只能在类内来使用)
类成员的作用域:类的定义范围内。
类外实现定义方法,类内部只需要声明即可:
class 类
{
限定符:
声明方法;
};
实现方法
返回值 类::方法(..)
{
}
构造方法(特殊):就是用分配存储空间并初始化空间值
class 类
{
public:
类名();
};
注:1、构造方法与类名相同 2、没有返回值 3、只要对象实例化(定义对象)时,系统会自动调用构造函数
4、不允许调用构造函数。
1、默认构造函数:当用户没有为某个类定义构造函数时(由于第3点原因),编译就会默认添加如下构造函数
类名(){}
问:
构造函数什么调用?
当对象实例化时
重载构造方法:当一个构造方法不满足初始化时,可以实现重载
默认复制/拷贝构造函数:
类名(类名&)
类名 s1=s2; //s2已经实例化,将s2拷贝一分内存到s1中(调用拷贝构造函数)
或者 类名 s1(s2);
对象引用:对象取别名
类& 别名=对象;
对象数组:
类 数组名[10]={类名(...),,,,};
初始化列表:对成员变量简单赋值
class 类
{
类(int a1,int b,int c2):a(a1),b(b),c(c2)
{
this->c=c2;//与初始化列表中串c(c2)等价
}
限定符
成员 a;
成员 b;
成员 c;
}
注:1只能在定义构造函数中使用初始化列表。
2只能过成员变量名来初始化
问:多个构造方法,怎样确定调用构造函数的?
在实例化对象时,通过传递实例残表来确定
隐式类型转换原则:
1、如果是char-->int
short->int
float-->double
int+float---->double
char+short--->int
short+float->double
阅读全文
0 0
- 嵌入式每日学习心得2017.08.02
- 嵌入式每日学习心得2017.08.01
- 嵌入式每日学习心得2017.08.03
- 嵌入式每日学习心得2017.08.04
- 嵌入式每日学习心得2017.08.07
- 嵌入式每日学习心得2017.08.08
- 嵌入式每日学习心得2017.08.09
- 嵌入式每日学习心得2017.08.10
- 嵌入式每日学习心得2017.08.14
- 嵌入式每日学习心得2017.08.15
- 嵌入式每日学习心得2017.08.17
- 嵌入式每日学习心得 线程
- 嵌入式每日学习心得2017.07.07
- 嵌入式每日学习心得2017.07.08
- 嵌入式每日学习心得2017.07.10
- 嵌入式每日学习心得2017.07.11
- 嵌入式每日学习心得2017.07.12
- 嵌入式每日学习心得2017.07.13
- D
- jdk1.8 J.U.C并发源码阅读------CyclicBarrier源码解析
- Docker容器固定IP分配
- linux内存映射mmap
- UDP
- 嵌入式每日学习心得2017.08.02
- 卡片游戏
- shell编程之变量
- 基本练习题
- JS数组的使用
- Unity RGBA16 + Dither
- 循环冗余校验码CRC
- 经典算法之回溯法
- Oracle伪列之rowmun和rowid