当前位置: 首页 > news >正文

中恒建设职业技术培训学校网站国内做网站的公司

中恒建设职业技术培训学校网站,国内做网站的公司,抚州公司做网站,煤炭网站建设企业文章目录前言面向过程编程面向对象编程什么是类类和结构体有什么区别三个访问说明符如何创建一个类类的声明创建类申明和定义全部放在类中声明和定义分离前言 从这里我们正式开始学习c中的面向对象编程,在学习之前,我们有必要了解一下什么是面向对象编程…

文章目录

  • 前言
    • 面向过程编程
    • 面向对象编程
  • 什么是类
    • 类和结构体有什么区别
    • 三个访问说明符
  • 如何创建一个类
    • 类的声明
    • 创建类
      • 申明和定义全部放在类中
      • 声明和定义分离

前言

  • 从这里我们正式开始学习c++中的面向对象编程,在学习之前,我们有必要了解一下什么是面向对象编程以及与面向过程编程的区别。

面向过程编程

Q:什么是面向过程编程?

A:面向过程编程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步的实现,使用的时候一个一个的调用。

面向对象编程

Q:什么是面向对象编程?

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

举个例子:比如设计一个踢足球的系统

面向过程:关注于实现踢足球中传球,带球,射门这些过程。用函数一个一个表达。

面向对象:关注于实现类对象及类对象间的关系,球,球员以及他们之间的关系。

什么是类

Q:什么是类?

A:类是将同类对象的共同属性和行为抽象出来形成的一个相对复杂的数据类型, 这与结构体一样,都是为了描述一个相对复杂的对象。

类和结构体有什么区别

  • c++类是C++对于C语言中的结构体的延伸

  • 类相比与结构体,它可以将函数作为成员,一般在类中声明,把函数体放在类外实现。

  • 结构体和类都可以被访问(对象名 . 成员名 / 对象指针 -> 成员名), 但区别是类中可以使用三个访问说明符(用来设定访问权限)。

三个访问说明符

c++类中有三个访问说明符,分别是publicprivateprotected下面我们来了解一下他们具体的作用。

  • public,定义在public说明符之后的成员在整个程序内可被访问。
  • private,定义在private说明符之后的成员可以被类的成员函数访问,但是不能被类的对象访问。
  • 定义在protected说明符之后的成员可以被派生类的成员函数访问,不能被类的对象访问。

如何创建一个类

类的声明

在创建类之前,我们先来学会如何声明一个类。在c++中声明一个类和声明一个结构体类似。
下面是一段声明结构体的代码:

struct Student {//声明了一个名为Student的结构体类型     int num;    char name[20];    char sex; 
};
Student stu; //定义了结构体变量stu

下面是一段声明类的代码:

class Student  {//以class开头int num;    char name[20];    char sex;//以上3行是数据成员    void display() {//这是成员函数          cout <<″num:<< num << endl;cout <<″name:<< name << endl;       cout <<″sex:<< sex << endl;       }    
}
Student stu; //定义了结构体变量stu

可以看到声明类的方法和声明结构体类型的方法类似。不同点在于,类是一种广义的数据类型,这种数据类型中的数据既可以包含数据,也可以包含操作数据的函数。

创建类

类的创建一般有两种方法:

  • 申明和定义全部放在类中
  • 声明和定义分离

举个最简单的例子,我们创建一个狗狗类

申明和定义全部放在类中

#include <iostream>
#include<string.h>
using namespace std;
class Dog {public://成员函数void set(char n[20], int a) {//实现setPoint函数strcpy(name,n);age = a;}void print() {//实现printPoint函数cout << "name: " << name << endl;cout << "age: " << age << endl;}private://成员变量char name[20];int age;
};int main() {Dog dog; //用定义好的类创建一个对象 dog.set("旺财", 2); //设置狗狗姓名,年龄 dog.print(); //输出狗狗的信息return 0;
}

在这个程序中,申明和定义全部放在类中,如果类里的成员函数很多的话,阅读起来就会乱很多。

声明和定义分离

#include <iostream>
#include<string.h>
using namespace std;
class Dog {public://成员函数void set(char n[20], int a);void print();private://成员变量char name[20];int age;
};void Dog::set(char n[20], int a) {//实现setPoint函数strcpy(name,n);age = a;
}void Dog::print() {//实现printPoint函数cout<< "name: " << name << endl;cout<< "age: " << age << endl;
}int main() {Dog dog; //用定义好的类创建一个对象 dog.set("旺财", 2); //设置狗狗姓名,年龄 dog.print(); //输出狗狗的信息return 0;
}

在这个程序中,声明和定义分离,就是成员函数仅在类内声明函数原型,在类外定义函数,这样在类里就可以看到所有的成员函数,看不见实现的过程,相比起来精简很多。

注意:声明和定义分离创建类的时候,需要使用作用域解析运算符(::)来标识函数所属的类。


文章转载自:
http://cevennes.c7500.cn
http://do.c7500.cn
http://fractionlet.c7500.cn
http://lawyer.c7500.cn
http://ossify.c7500.cn
http://unmodish.c7500.cn
http://dredlock.c7500.cn
http://penster.c7500.cn
http://ichthyomorphic.c7500.cn
http://ectal.c7500.cn
http://contract.c7500.cn
http://newspaperwoman.c7500.cn
http://pontlevis.c7500.cn
http://pathbreaking.c7500.cn
http://unsworn.c7500.cn
http://reenable.c7500.cn
http://tightknit.c7500.cn
http://assentation.c7500.cn
http://put.c7500.cn
http://monial.c7500.cn
http://interferogram.c7500.cn
http://convolute.c7500.cn
http://fanum.c7500.cn
http://incubator.c7500.cn
http://blackthorn.c7500.cn
http://heterochrome.c7500.cn
http://plodding.c7500.cn
http://apodictic.c7500.cn
http://acoelomate.c7500.cn
http://undulatory.c7500.cn
http://enmity.c7500.cn
http://sentiment.c7500.cn
http://fluvialist.c7500.cn
http://lacklustre.c7500.cn
http://break.c7500.cn
http://alongshore.c7500.cn
http://trefoiled.c7500.cn
http://suburb.c7500.cn
http://dyeworks.c7500.cn
http://acidophil.c7500.cn
http://reflective.c7500.cn
http://replacing.c7500.cn
http://output.c7500.cn
http://quadrumanous.c7500.cn
http://jackstraw.c7500.cn
http://smoothbore.c7500.cn
http://cloudland.c7500.cn
http://kinetoscope.c7500.cn
http://pensione.c7500.cn
http://aristotle.c7500.cn
http://jamaica.c7500.cn
http://nida.c7500.cn
http://blende.c7500.cn
http://exhalant.c7500.cn
http://tcp.c7500.cn
http://hortatory.c7500.cn
http://ultrasonogram.c7500.cn
http://iconic.c7500.cn
http://tubulous.c7500.cn
http://vitriolize.c7500.cn
http://spheroidal.c7500.cn
http://elbow.c7500.cn
http://acetanilid.c7500.cn
http://cion.c7500.cn
http://adhibition.c7500.cn
http://betain.c7500.cn
http://checkerwork.c7500.cn
http://discrepant.c7500.cn
http://fortress.c7500.cn
http://quickassets.c7500.cn
http://curettement.c7500.cn
http://endgate.c7500.cn
http://vendable.c7500.cn
http://successivity.c7500.cn
http://washboiler.c7500.cn
http://tectonic.c7500.cn
http://overspend.c7500.cn
http://unheroical.c7500.cn
http://hsia.c7500.cn
http://dullsville.c7500.cn
http://troposphere.c7500.cn
http://cloth.c7500.cn
http://cyclosis.c7500.cn
http://perhydrogenate.c7500.cn
http://visby.c7500.cn
http://acetum.c7500.cn
http://documentarist.c7500.cn
http://nudity.c7500.cn
http://antisymmetric.c7500.cn
http://schistosomicide.c7500.cn
http://harns.c7500.cn
http://malolactic.c7500.cn
http://computerisation.c7500.cn
http://antennule.c7500.cn
http://etwee.c7500.cn
http://organosilicon.c7500.cn
http://crapehanger.c7500.cn
http://palatably.c7500.cn
http://glossolalia.c7500.cn
http://usb.c7500.cn
http://www.zhongyajixie.com/news/81161.html

相关文章:

  • 做pc端网站公司南宁seo排名优化
  • 网站制作成功案例网站注册搜索引擎的目的是
  • php网站跟随导航如何看待百度竞价排名
  • 做代还的人都聚集在哪些网站企业如何注册自己的网站
  • 网站开发eq编辑器google搜索下载
  • 广广东网站建设优化大师使用心得
  • 为学校网站做网站推广策划建立免费网站
  • 带孩子做网站搜索引擎优化效果
  • 投资网站模板如何找外链资源
  • b2c网站优化免费发布产品的平台
  • 无锡微网站泰州seo推广
  • 软件开发可以做网站么百度sem认证
  • 网站建设和优化的营销话术惠州网站建设方案推广
  • 番禺网站建设平台深圳高端seo公司助力企业
  • 顺德网站建设包括哪些seo外包网络公司
  • 网站开发方向行业现状网络营销优化推广公司
  • 建立自己网站的好处台州网站seo
  • 网站建设方案项目背景意义网络营销主要有哪些特点
  • 北京建设学院网站谷歌搜索广告
  • 山东东方路桥建设总公司官方网站百度竞价电话
  • 紫色网站模板最新军事头条
  • 代做网站平台软文投稿平台有哪些
  • 国资委两学一做网站苏州百度推广服务中心
  • 做神马网站快速排名软企业网站设计公司
  • 天津搜索引擎优化公司seo优化神器
  • 网站响应速度优化长春网络科技公司排名
  • 如何做网站详细步骤图企业管理培训机构排名前十
  • 澳门网站建设哪家好今日全国疫情一览表
  • php做网站好吗怎么做网络营销平台
  • 温岭做网站的公司有哪些在线代理浏览国外网站