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

网站建设维护东莞常平哪里好玩

网站建设维护,东莞常平哪里好玩,网站开发实习总结,cms自助建站#x1f451;专栏内容#xff1a;C学习笔记⛪个人主页#xff1a;子夜的星的主页#x1f495;座右铭#xff1a;日拱一卒#xff0c;功不唐捐 文章目录一、前言二、面向对象编程三、类和对象1、类的引入2、类的定义Ⅰ、声明和定义在一起Ⅱ、声明和定义分开Ⅲ、成员变量命… 专栏内容C学习笔记⛪个人主页子夜的星的主页座右铭日拱一卒功不唐捐 文章目录一、前言二、面向对象编程三、类和对象1、类的引入2、类的定义Ⅰ、声明和定义在一起Ⅱ、声明和定义分开Ⅲ、成员变量命名建议3、类的封装和访问限定符Ⅰ、封装Ⅱ、访问限定符4、类的作用域5、类的实例化四、总结一、前言 类和对象是C 在 C 语言的基础上新增加的特性而正是因为这一特性让C成为了面向对象的编程语言。本文将跟随C大哥的脚步介绍类和对象这一重要特性。 二、面向对象编程 百度百科面向对象程序设计(Object Oriented Programming)作为一种新方法其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事物的一切具体特征只能对事物特征和变化规律的一种抽象且在它所涉及的范围内更普遍、更集中、更深刻地描述客体的特征。通过建立模型而达到的抽象是人们对客体认识的深化。 以洗衣服为例 像C语言你这种面向过程编程的做法就是手洗。所以你想洗一件衣服的话洗衣服的每一个过程你自己都要做一遍。 而C洗一件衣服就很简单了只需要把衣服放进洗衣机里就行了。 对比一下上面两种洗衣服的方法。面向过程是自己在干活而面向对象是将事物高度抽象化所以面向对象必须先建立抽象模型或者更形象点说就是建立一个机器之后直接使用模型机器来干活。 C语言是面向过程的关注的是过程分析出求解问题的步骤然后通过函数调用来逐步解决问题。 C是面向对象的关注的是对象将一件事情拆分成不同的对象靠对象之间的交互完成。 三、类和对象 1、类的引入 类可以看作是C语言里面结构体struct的升级版在C语言结构体中只能定义变量在C中类不仅可以定义变量也可以定义函数。 举个例子 计算一个学生的总分。 C语言是先定义一个结构体然后再写一个计算输出总分的函数。 struct Student {//结构体包含的成员变量int number;float math;float english;float chinese; }; //求总分函数 int Sum(struct Student stu) {return stu.chinese stu.english stu.math; } //输出函数 void print(struct Student stu) {//调用求总分函数float sum Sum(stu);//输出结构printf(学号%d 的总分是 %.2f\n, stu.number,sum ); } int main() {struct Student s1;s1.number 01;s1.chinese 100;s1.english 100;s1.math 100;//调用函数print(s1);return 0; }再看C的做法C是把实现这个功能的所有成员和函数都放在这个类里面。 以后再想实现这个功能就直接用这个类就行了。 struct Student {int number;float math;float english;float chinese;int Sum(struct Student stu){return stu.chinese stu.english stu.math;}void print(struct Student stu){float sum Sum(stu);printf(学号%d 的总分是 %.2f\n, stu.number, sum);}}; int main() {struct Student s1;s1.number 01;s1.chinese 100;s1.english 100;s1.math 100;s1.print(s1);return 0; }注意上面的定义在C中更喜欢用class来代替struct。 当然使用struct也行不过与class相比会有点不一样。具体有啥不一样请继续看下文。 2、类的定义 class className { // 类体由成员函数和成员变量组成 };class为定义类的关键字ClassName为类的名字{ }中为类的主体注意类定义结束时后面分号不能省略。 类体中内容称为类的成员。类中的变量称为类的属性或成员变量。类中的函数称为类的方法或者成员函数。 Ⅰ、声明和定义在一起 声明和定义可以全部放在类体中的定义但是需要注意的是成员函数如果在类中定义编译器可能会将其当成内联函数处理。 Ⅱ、声明和定义分开 类的声明放在.h文件中成员函数定义放在.cpp文件中。 注意此时成员函数名前需要加类名:: Ⅲ、成员变量命名建议 class Date { public:void Init(int year){// 这里的year到底是成员变量还是函数形参year year;} private:int year; };为了避免这种成员变量和函数形参分不清楚的情况我们一般都是加个前缀或者后缀标识进行区分。 class Date { public:void Init(int year){year_ year;} private:int year_; };3、类的封装和访问限定符 Ⅰ、封装 封装将数据和操作数据的方法进行有机结合隐藏对象的属性和实现细节仅对外公开接口来 和对象进行交互。封装本质上是一种管理让用户更方便使用类。 打个比方 对于电脑这样一个复杂的设备提供给用户的就只有开关机键、通过键盘输入显示器USB插孔等让用户和计算机进行交互完成日常事务。但实际上电脑真正工作的却是CPU、显卡、内存等一些硬件元件。对于计算机使用者而言不用关心内部核心部件比如主板上线路是如何布局的CPU内部是如何设计的等用户只需要知道怎么开机、怎么通过键盘和鼠标与计算机进行交互即可。因此计算机厂商在出厂时在外部套上壳子将内部实现细节隐藏起来仅仅对外提供开关机、鼠标以及键盘插孔等让用户可以与计算机进行交互即可。 C实现封装的方式用类将对象的属性与方法结合在一块让对象更加完善通过访问权限选择性的将其接口提供给外部的用户使用。 Ⅱ、访问限定符 public修饰的成员在类外可以直接被访问protected和private修饰的成员在类外不能直接被访问(此处protected和private是类似的)访问权限作用域从该访问限定符出现的位置开始直到下一个访问限定符出现时为止如果后面没有访问限定符作用域就到 } 即类结束。 5. class的默认访问权限为privatestruct为public(因为struct要兼容C语言) 现在回答最开始的问题C中struct和class的区别是什么 C需要兼容C语言所以C中struct可以当成结构体使用。另外C中struct还可以用来定义类。和class定义类是一样的区别是struct定义的类默认访问权限是publicclass定义的类默认访问权限是private。 注意在继承和模板参数列表位置struct和class也有区别后序再给大家介绍。 4、类的作用域 类定义了一个新的作用域类的所有成员都在类的作用域中。在类体外定义成员时需要使用:: 作用域操作符指明成员是属于哪个类域。 class Person { public:void PrintPersonInfo(); private:char _name[20];char _gender[3];int _age; }; //这里需要指定PrintPersonInfo是属于Person这个类域 void Person::PrintPersonInfo() {cout _name _gender _age endl;}5、类的实例化 用类类型创建对象的过程称为类的实例化。 类是对对象进行描述的是一种复杂数据类型的声明不占用内存空间。一个类可以实例化出多个对象实例化出的对象占用实际的物理空间存储类成员变量。 举个例子类实例化出对象就像现实中使用建筑设计图建造出房子类就像是设计图。只是设计出了需要什么东西但是并没有实体的建筑存在同样类也只是一个设计实例化出的对象才能实际存储数据占用物理空间。 四、总结 C是面向对象的关注的是对象将一件事情拆分成不同的对象靠对象之间的交互完成。封装就是将数据和操作数据的方法进行有机结合隐藏对象的属性和实现细节仅对外公开接口来 和对象进行交互。封装本质上是一种管理让用户更方便使用类。在类体外定义成员时需要使用:: 作用域操作符指明成员是属于哪个类域。对象是对客观事物的抽象类是对对象的抽象。 类是一种抽象的数据类型。 它们的关系是对象是类的实例类是对象的模板。如果有对象。请不要因为学习面向对象编程而忽略了对象的情绪。
http://www.dnsts.com.cn/news/85452.html

相关文章:

  • 南靖企业网站建设公司在线制作gif表情包生成器
  • 旅游网站模板htmlwordpress宽度
  • 网站建设的一般流程排序为电商产品推广文案
  • 东莞市住房建设局网站WordPress的king免费
  • 天津市网站制作建设推广公司空投网站建设
  • 手机制作网站app天津城乡住房建设厅网站首页
  • 湛江怎么做网站关键词优化wordpress注册取消邮箱验证
  • 手机网站代码下载宿迁二手房58同城急售
  • 网站的站内结构锚文本是如何做的黄石市下陆区建设管理局网站
  • 网站建设 选择题软件培训计划和培训内容
  • 做商城网站买多大的空间安徽省城乡建设网站
  • 网站改版 更换域名广州短视频制作公司
  • 北京手机网站网络科技公司经营范围包括哪些
  • 济南品质网站建设哪家好商丘做网站优化的公司有哪些
  • 平昌移动网站建设友链申请
  • 装修效果图网站推荐wap浏览器
  • 局域网站建设模版网络运营需要学什么
  • 怎么给网站做链接屏蔽wap游戏制作
  • 谷城网站制作郑州网站建设哪家有
  • 网站后台风格有什么做衣服的网站吗
  • 自动的网站设计制作app软件开发专业公司
  • 平台类网站建设胡方案明细免费行情软件app网站mnu
  • 域名查询ip网站wordpress 名片主题
  • 南昌网站优化网站开发百度一下搜索一下
  • 产权交易中心网站建设的原因收到短信说备案被退回但工信部网站上正常啊
  • dede网站建设的个人总结网站建设的毕业报告
  • 众网站营口汽车网站建设
  • 承德网站建设公司官方网站建站
  • 可以做视频推广的网站有哪些js模板网站
  • 建立能网上交易的网站多少钱网站建设企业模板下载