C++基础 类和对象 17_11_12_晚
来源:互联网 发布:avr 单片机 pdf 编辑:程序博客网 时间:2024/06/02 21:05
类和对象 第一遍
*一 类和对象是什么?*
1类是什么?
类 模板 创建 类是模板用来创建对象
类 数据类型 类是复杂数据类型的声明,不占内存空间
2对象是什么?
对象 变量 类修饰 对象是用类这种数据类型来修饰的一个变量,类似C语言中的int a;
3类的特征:
(1)类 变量 函数 类含有成员变量和成员函数
(2)类 整体 属性 方法 将类看作一个整体的话,类具有属性和方法,属性又名成员变量,方法又名成员函数。
4对象的特征:
(1)对象 数据 对象可由类去修饰,则该对象拥有类的成员变量和成员函数,是一份实实在在的数据,故占内存空间。
5 类与对象的联系:
(1)一对多 模板 一个类可以创建多个对象,每个对象都是类这个数据类型的一个变量,类在这里起创建对象的模板作用
(2)实例化 创建对象的过程也叫类的实例化。每个对象都是类的一个具体实例(Instance),拥有类的成员变量和成员函数。
6总结:
(1)类 模板 数据类型 ; 变量 函数 ;不占内存 ;
(2)对象 变量 类修饰 ;实实在在的数据 占内存;
二 类怎么定义?
1如图:
2 类是用户自定义的类型,如果程序中要用到类,必须提前说明,或者使用已存在的类(别人写好的类、标准库中的类等),C++语法本身并不提供现成的类的名称、结构和内容。
3 class是 C++ 中新增关键字,专门用来定义类。Student是类的名称;类名的首字母一般大写,以和其他的标识符区分开。{ }内部是类所包含的成员变量和成员函数,它们统称为类的成员(Member);由{ }包围起来的部分有时也称为类体,和函数体的概念类似。public也是 C++ 的新增关键字,它只能用在类的定义中,表示类的成员变量或成员函数具有“公开”的访问权限。
注意在类定义最后有一个分号; ,它是类定义的一部分,表示类定义结束了,不能省略。
4 “ 没有创建对象的类是一个不折不扣的空想家,承载不了实际。” 类只是一个模板(Template),编译后不占用内存空间,所以在定义类时不能对成员变量进行初始化,因为没有地方存储数据。只有在创建对象以后才会给成员变量分配内存,这个时候就可以赋值了。
5 类可以理解为一种新的数据类型,该数据类型的名称是 Student。与 char、int、float 等基本数据类型不同的是,Student 是一种复杂数据类型,可以包含基本类型,而且还有很多基本类型中没有的特性,以后大家会见到。
三 怎么创建对象?
(1)前提是要有类 类怎么搞?人家定义好的和自己定义的。
(2) 有了类,就用类去修饰一个变量,这个变量就叫对象,这个过程就叫创建对象。这样,这个对象就具有了类的属性和方法。也可以换句话说:这样,这个对象就可以访问类的成员变量和成员函数。
(3)class Student{…};//自定义的类
Student stu;//创建对象stu Student这个类修饰stu 则stu这个对象就具有了类的属性和方法。
stu这个对象的属性是 name age score
访问的话,加上 . 如:stu.name=“…”;
(4)stu 是一个对象,占用内存空间,可以对它的成员变量赋值,也可以读取它的成员变量。但是一开始用关键字class自定义的类就不占用内存空间。
类通常定义在函数外面,当然也可以定义在函数内部,不过很少这样使用。
(待续…)
- C++基础 类和对象 17_11_12_晚
- object-c基础-创建类和对象
- objective-c 基础语法和习题 :类、对象和方法
- Objective - C基础: 第一天 - 5.对象和类
- 类和对象基础
- 类和对象基础
- 类和对象基础
- 【C++】类与对象基础
- OC基础-零基础学习Objective-C:第一部分.类和对象
- c++---类和对象
- C++:类和对象
- 类和对象(C++)
- 【c++】类和对象
- C++:类和对象
- C++:类和对象
- 【C++】类和对象
- 面向对象基础-类和对象
- C++基础和类、对象
- div+css搭建网站
- MVC框架模式与SpringMVC框架
- Android的存储系统1
- 视频的分辨率/码率
- linux 把视屏转为流
- C++基础 类和对象 17_11_12_晚
- java Object的clone方法,浅拷贝与深拷贝
- Android的存储系统2
- 左旋字符串中的k个字符
- SpringBoot常用配置 application.yml /application.properties常用配置介绍
- 2. 如果两个Integer的值相等,使用==进行判断的结果是否相等(常量池问题)?
- github团队合作教程(使用gitkraken)
- 7.3用编程计算两整数的最大值
- Android的存储系统3