C++的类和对象
#include <iostream> // 预处理命令
using namespace std; class Student{ // 声明一个类,类名为Student private : // 以下为类中的私有部分
int num ;// 私有变量num
int score;// 私有变量score
public :// 以下为类中的公用部分
void setData()// 定义公用函数setdata
{
cin >> num;// 输入num的值 cin >> score;// 输入score的值 }// ;号 , 可有可无 void display() // 定义公用函数display
{
cout << "num=" << num << endl; // 输出num的值 cout << "score=" << score << endl; //输出score的值 } // ;号 , 可有可无
};// 类的声明结束 , ;号不能缺 Student stud1 ,stud2; //定义stud1和stud2为Student类的变量,称为对象
int main(void){ // 主函数首部 stud1.setData(); // 调用对象stud1的setdata函数 stud2.setData(); // 调用对象stud2的setdata函数 stud1.display(); // 调用对象stud1的display函数 stud2.display(); // 调用对象stud2的display函数 return ;
}
在一个类中包含两种成员: 数据和函数,分别称为数据成员和成员函数。
在C++中把一组数据和有权调用这些数据的函数封装在一起,组成一种称为“类(class)”的数据结构。在上面的程序中,数据成员num,score和成员函数setdata,display组成了一个名为Student的“类”类型。成员函数是用来对数据成员进行操作的。也就是说,一个类是由一批数据以及对其操作的函数组成的。
类可以体现数据的封装性和信息隐蔽。在上面的程序中,在声明Student类时,把类中的数据和函数分为两大类: private(私有的)和public(公用的)。把全部数据(num,score)指定为私有的,把全部函数(setdata,display)指定为公用的。在大多数情况下,会把所有数据指定为私有,以实现信息隐蔽。
具有“类”类型特征的变量称为“对象”(object)。
程序中第28~39行是主函数。
程序运行情况如下:
98.5 ↙ (输入学生1的学号和成绩)
76.5 ↙ (输入学生2的学号和成绩)
num= (输出学生1的学号)
score=98.5 (输出学生1的成绩)
num= (输出学生2的学号)
score=76.5 (输出学生2的成绩)
C++的类和对象的更多相关文章
- Java编程里的类和对象
像我们搞计算机这块的,都知道这么一件事,当前的计算机编程语言主要分为两大块,一为面向过程,二为面向对象.Java就是一门纯面向对象的语言.学习了一个月左右的Java,在下对于Java当中的类和对象有了 ...
- Python - 类与对象的方法
类与对象的方法
- C++基础知识(5)---类和对象
终于把C++中的基础在前面的几篇博客中总结完了,可能还有一些语法还没有总结到,没关系,以后用到了再查资料就好.类是C++中的一个非常重要的概念,这是区别你使用的C++到底是面向过程还是面向对象的一个重 ...
- 简述JavaScript对象、数组对象与类数组对象
问题引出 在上图给出的文档中,用JavaScript获取那个a标签,要用什么办法呢?相信第一反应一定是使用document.getElementsByTagName('a')[0]来获取.同样的,在使 ...
- 前端学PHP之面向对象系列第一篇——类和对象
× 目录 [1]类 [2]成员属性[3]成员方法[4]对象[5]成员访问[6]this 前面的话 面向对象程序设计(OOP)是一种计算机编程架构.计算机程序由单个能够起到子程序作用的单元或对象组成,为 ...
- Objective-C Runtime 运行时之一:类与对象
Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理.这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一 ...
- [Java入门笔记] 面向对象编程基础(一):类和对象
什么是面向对象编程? 我们先来看看几个概念: 面向过程程序设计 面向过程,是根据事情发展的步骤,按进行的顺序过程划分,面向过程其实是最为实际的一种思考方式,可以说面向过程是一种基础的方法,它考虑的是实 ...
- 解析Java类和对象的初始化过程
类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来 ...
- 02OC的类和对象
这章重点介绍OC的类以及对象,由于C语言是面向过程语言,而OC只是对于C语言多了一些面向对象的特性,所以OC相对于其他面向对象语言,例如C#.Java等没有那么多的语法特性,所以差别还是比较大的. 一 ...
- swift基础:第六部分:类与对象
http://reactnative.cn/docs/0.24/getting-started.html#content(react Native 开发文档) 互联网这个时代,你松懈一天,就会有很多很 ...
随机推荐
- 【转】C/C++中的日期和时间 TIME_T与STRUCT TM转换——2013-08-25 16
http://www.cnblogs.com/Wiseman/archive/2005/10/24/260576.html 摘要: 本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的 ...
- eclipse 中修改 M2_REPO的值--转载
从eclipse中增加了maven2的插件之后,maven默认的本地库的路径是${user}/.m2/repository/下,一般windows用户的操作系统都安装在C盘,所以这个目录 下的jar包 ...
- log4j.properties文件配置--官方文档
Default Initialization Procedure The log4j library does not make any assumptions about its environme ...
- Java基础知识强化之IO流笔记49:IO流练习之 复制指定目录下指定后缀名的文件并修改名称的案例
1. 复制指定目录下指定后缀名的文件并修改名称的案例 需求:复制指定目录下的指定文件,并修改后缀名. • 指定的文件是:.java文件. • 指定的后缀名是:.jad • 指 ...
- Linux常用系统调用
转载 http://www.ibm.com/developerworks/cn/linux/kernel/syscall/part1/appendix.html#icomments 按照惯例,这个列表 ...
- R-大数据分析挖掘(3-R作图)
R语言绘图功能: 提供实例: demo(graphics)
- portal单点登录的原理与实现还有ESB
portal单点登录的原理与实现还有ESB 在毕业论文中有描述到这一点.我给我出的截图
- MarkDown Pad2的一些用法
一.标题 1.使用命令Ctrl+1 标题一 2.使用文字回车后,加上"-"号,再回车.就有如下的示例: 标题二 注意:减(-)号是用于最近的那一行文字变成标题. 二.背景 例如我要 ...
- Eclipse使用Maven创建Web项目
一.Maven插件下载.jdk下载 1.maven下载地址: http://maven.apache.org/download.cgi 2.jdk下载地址: http://www.oracle.com ...
- 09.25日记(2014年9月25日23:22:06)用java这么多年面向对象我真的懂了吗,测试先行理念会玩吗
二胡 (1)应该找些书来看看,工作N年并不代表就有N年的工作经验. (2)DiaTransit02,DiaDept02,DiaAirport02,DiaHighway02.都具有x,y属性为何不设计一 ...