范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

面向对象(1)

  简述一下什么是面向对象
  1、面向对象是一种编程思想,把一切东西看成一个个对象 。把这些类拥有的属性变量 和操作这些属性变量的函数 打包成一个类。
  2、面向过程和面向对象区别
  面向过程 :根据业务逻辑从上到下编写代码
  面向对象 :将数据和函数进行封装,可以快速开发,减少重复代码的重写。简述一下面向对象的三大特征
  封装 、继承 、多态
  1、封装
  将数据和操作数据方法进行结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互。封装的本质就是管理 。
  2、继承
  可以使用现有类的所有功能,并在不需要重写原理类的情况下进行功能扩展。
  继承方式:
  继承方式
  private继承
  protected继承
  public继承
  基类的private成员
  不可见
  不可见
  不可见
  基类的protected成员
  变为private成员
  仍为protected成员
  仍为protected成员
  基类的public成员
  变为private成员
  变为protected成员
  仍为public成员
  3、多态
  同 一操作作用于 不同 的对象,可以有 不同 的解释,产生 不同 的执行结果,这就是多态性。就是用 基类的引用指向子类的对象 。
  多态实现:重写 、重载 简述一下 C++ 的重载和重写,以及它们的区别
  1、重写
  指 派生类 中存在重新定义的函数。其 函数名 、 参数列表 、 返回值类型 ,所有都必须同 基类 中被重写的函数 一致 ,派生类对象调用时会调用派生类的重写函数,不会调用被重写函数。
  重写的基类中被重写的函数必须有 virtual修饰 。
  示例:#include  using namespace std;  class A { public:  virtual void fun()  {   cout << "A";  } }; class B :public A { public:  virtual void fun()  {   cout << "B";  } }; int main(void) {  A* a = new B();  a->fun();//输出B,A类中的fun在B类中重写 }
  2、重载
  我们在平时写代码中会用到几个函数但是他们的实现功能相同,但是有些细节却不同。在 C++中人们提出了 用一个函数名定义多个函数,也就是所谓的函数重载 。
  函数重载 是指同一可访问区内被声明的几个具有不同参数列( 参数的类型 , 个数 , 顺序不同 )的 同名函数 ,根据参数列表确定调用哪个函数,重载不关心函数 返回类型 。 #include  using namespace std;  class A {  void fun() {};  void fun(int i) {};  void fun(int i, int j) {};     void fun1(int i,int j){}; };C++ 的重载和重写是如何实现的
  1、C++利用 命名倾轧(name mangling)技术 ,来改名函数名,区分参数不同的同名函数。 命名倾轧是在编译阶段完成的。
  2、在 基类的函数前加上virtual关键字 ,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。
  对象类型是派生类,就调用派生类的函数;对象类型是基类,就调用基类的函数。 用 virtual 关键字申明的函数叫做虚函数 , 虚函数肯定是类的成员函数 。 存在虚函数的类都有一个一维的虚函数表叫做 虚表, 类的对象有一个指向虚表开始的 虚指针 。 虚表是和类对应的,虚表指针是和对象对应的 。 多态性是 一个接口多种实现 ,是面向对象的核心,分为 类 的多态性和 函数 的多态性。 重写用虚函数来实现,结合动态绑定。 纯虚函数 是虚函数再加上  = 0 。 抽象类是指包括 至少一个 纯虚函数的类。
  纯虚函数:virtual void fun()=0 。即抽象类必须在子类实现这个函数,即先有名称,没有内容, 在派生类实现内容 。 C 语言如何实现 C++ 语言中的重载
  c语言中不允许有同名函数,因为编译时函数命名是一样的,不像c++会添加参数类型和返回类型作为函数编译后的名称,进而实现重载。如果要用c语言显现函数重载,可通过以下方式来实现:
  1、使用 函数指针来实现 ,重载的函数不能使用同名称,只是类似的实现了函数重载功能。
  2、重载函数使用可变参数 ,方式如打开文件open函数。
  3、gcc有内置函数 ,程序使用 编译函数 可以实现函数重载
  示例:#include   void func_int(void * a) {     printf("%d ",*(int*)a);  //输出int类型,注意 void * 转化为int }   void func_double(void * b) {     printf("%.2f ",*(double*)b); }   typedef void (*ptr)(void *);  //typedef申明一个函数指针   void c_func(ptr p,void *param) {      p(param);                //调用对应函数 }   int main() {     int a = 23;     double b = 23.23;     c_func(func_int,&a);     c_func(func_double,&b);     return 0; }构造函数有几种,分别什么作用
  C++中的构造函数可以分为4类: 默认构造函数 、 初始化构造函数 、 拷贝构造函数 、 移动构造函数。
  1、默认构造和初始化构造。定义类的对象时完成初始化工作。
  示例:class Student { public:  //默认构造函数  Student()  {     num=1001;        age=18;      }  //初始化构造函数  Student(int n,int a):num(n),age(a){} private:  int num;  int age; }; int main() {  //用默认构造函数初始化对象S1  Student s1;  //用初始化构造函数初始化对象S2  Student s2(1002,18);  return 0; }
  有有参构造,编译器不再提供默认的构造函数。
  2、拷贝构造#include "stdafx.h" #include "iostream.h"  class Test {     int i;     int *p; public:     Test(int ai,int value)     {         i = ai;         p = new int(value);     }     ~Test()     {         delete p;     }     Test(const Test& t)     {         this->i = t.i;         this->p = new int(*t.p);     } }; //复制构造函数用于复制本类的对象 int main(int argc, char* argv[]) {     Test t1(1,2);     Test t2(t1);//将对象t1复制给t2。注意复制和赋值的概念不同     return 0; }赋值 构造函数默认实现的是值拷贝(浅拷贝 )。
  3、移动构造函数。 用于将其他类型的变量,隐式转换为本类对象 。下面的转换构造函数,将int类型的r转换为Student类型的对象,对象的age为r,num为1004。 Student(int r) {  int num=1004;  int age= r; }定义一个空类,默认会生成哪些函数
  无参的构造函数、拷贝构造函数、赋值运算符、析构函数(非虚 )。C++ 类对象的初始化顺序,有多重继承情况下的顺序创建派生类的对象,基类的构造函数优先被调用(也优先于派生类里的成员类) 如果类里面有成员类,成员类的构造函数优先被调用;(也优先于该类本身的构造函数) 基类构造函数如果有多个基类,则构造函数的调用顺序是某类在类派生表中出现的顺序而不是它们在成员初始化表中的顺序 成员类对象构造函数如果有多个成员类对象,则构造函数的调用顺序是对象在类中被声明的顺序而不是它们出现在成员初始化表中的顺序 派生类构造函数,作为一般规则派生类构造函数应该不能直接向一个基类数据成员赋值而是把值传递给适当的基类构造函数,否则两个类的实现变成紧耦合的(tightly coupled)将更加难于正确地修改或扩展基类的实现。(基类设计者的责任是提供一组适当的基类构造函数)
  总结:
  父类构造函数 –> 成员类对象构造函数 –> 自身构造函数
  中成员变量的初始化与声明顺序有关,构造函数的调用顺序是类派生列表中的顺序
  析构顺序和构造顺序相反

声震天下,势吞金乌DC评兴戈APT7日蚀又称日食,一种天文现象,相传佛教释迦摩尼的一位弟子之母,生性暴戾。玉帝得知,将其打入十八层地狱,变为恶狗,永世不得超生。弟子日夜修炼,成了地藏菩萨。为救母亲,他用锡杖打开地狱门真无线耳机也能有箱子味?DC评惠威HiViAW76对于玩过音响的朋友们来说,惠威这个品牌一定不陌生。作为民族企业,经过30年的发展,惠威已经成为世界著名高级音响制造公司,并以各类杰出的电声产品享誉业界。而近年来,惠威也顺应时代发展如期而至,很有精神耳机美学直击2020中国广州国际耳机展(图Envied文EnviedDC)今年首个如期举办的大型HiFi盛会2020中国(广州)国际耳机展终于在万众期盼之中于9月1213日在白云国际会议中心圆满举办了。今年的展会耳机美钢铁之心DC评水月雨SSR超级银船如果你想买个入门价位的耳机,你会买什么?这几年有粉丝求推荐入门耳机,我的答案往往是水月雨。原因很简单,水月雨是一个拥有广泛群众基础的品牌,对于这样的品牌,除非它想砸自己招牌,否则它神说,要有光DC评水月雨Illumination光神说要有光就有了光。圣经以这一句话开启。上帝也曾说我是世界的光。跟从我的,就不在黑暗里行走,必要得着生命的光。光是希望公义良善荣耀。有了光,才有这世间万物,才有这芸芸众生。水月雨的直男情书DC评LZA7和老忠初次见面是在一年半以前我搞的线下聚会上,印象中的老忠就是一个内敛的中年大哥,一如他的产品般朴实无华。他创立的LZHIFI在国内一直可谓默默无闻,甚至有的烧友都没有听说过,但是如期而至,很有精神耳机美学直击2020中国国际耳机展中篇413锦锋音响北京安润在展厅门口的原创入门新品OPAQ2。1成为大家试听较多的对象。这是一台兼顾桌面发烧系统和小型无源音箱系统的一体化解码耳放功放一体机,在成都和上海展上备受关注,动听音符,动人频率DC评7Hzi88致命频率第一次听到七赫兹7Hz这个品牌的时候,我是有一丝诧异的。为什么呢,是因为众所周知,人耳能听到的频率范围是20Hz至20000Hz之间,所以,7Hz这个频响人耳是根本听不到的如期而至,很有精神耳机美学直击2020中国国际耳机展下篇C厅展位C01享声SOUNDAWAREC02NFAudio宁梵声学NM2的声音十分的正,理性之中又包含着感性,并不会显得人声冷冰冰。NM2的外观十分的好看,如同声音一样的清澈透明。1113DC叔评海贝R2FD1Beans海贝R2FD1Beans应该是我玩过的最亲民的官方西装三件套了。官方套装最大的意义就在于从设计之初就根据彼此做好了调音匹配和优化,能最大程度上发挥出整套设备的实力,另外统一的设计语HTC开发元宇宙平台XR企业当红齐天获数亿元人民币融资(VRPinea10月14日讯)今日重点新闻HTC目前正在开发一款名叫ViveportVerse的元宇宙平台小米建银国际领投,XR企业当红齐天完成B轮数亿元融资乌克兰元宇宙虚拟活动
如何一句话让大家记住你的品牌美眉们,买它!比较熟悉电商直播营销的朋友们听到这句话,脑海中第一个浮现的肯定会是李佳琦,毕竟这已经成为李佳琦的slogan似的存在,也成为众人认识李佳琦的契机以及语言梗。如果将李佳斥资200w,买的真的只是设计?互联网又双叒叕炸开了锅,原因是小米新LOGO这一个话题。小米要更换新logo肯定是会引起讨论的,毕竟以小米目前的国民度来说,大家肯定会好奇究竟改成什么样子。但是引发热议的原因不止这法学生因没有充电器,起诉苹果公司!网友支持!苹果在变相涨价10月26日,一则关于京沪两地法学生起诉苹果不送充电器的话题冲上了热搜榜。事件源起于北京化工大学的法学生方同学购买了iPhone12ProMax手机,发现手机并没有配备相应的充电设5000万播放量它是怎么做到火爆全网,秒杀小鲜肉的?2021年的春晚,在各台春晚争相斗艳之时,有一台春晚,默默收割了5000万的播放量却被网友恨铁不成钢戏称该台是用心做舞台,用脚做宣传。在这台晚会之前,很多人都觉得河南卫视的节目请不特斯拉刹车门数据计算的结果及推测首先要申明,此处的失灵并非是完全的失效,而是超出其应该的表现。另外,我可没收钱,纯粹是属于吃瓜群众,以及一位理工男出身的较真。不过,我倒是觉得,不管是做为车主,还是做为标准的吃瓜群音箱科普系列书架还是落地,这不是一个问题音箱是一套音响系统的灵魂,对系统声音起决定性的作用。许多音响入门爱好者在选择音箱时都会很迷茫,不知道该如何判断音箱的好坏以及看音箱的参数。本文希望尽可能详尽地讲解音箱市面上的音箱相音箱科普系列参数为什么不起作用了(下)?音箱是一套音响系统的灵魂,对系统声音起决定性的作用。许多音响入门爱好者在选择音箱时都会很迷茫,不知道该如何判断音箱的好坏以及看音箱的参数。本文希望尽可能详尽地讲解音箱市面上的音箱类参加了最惨淡的一届广州音响展流水账(上)2021年5月28日30日,自己终于在著名的广州音响展上亮了相了(此处应该有鼓掌)!不过,却是人气值最惨的一届广州音响展,非常非常的遗憾!但同时,我也为我们的祖国感到骄傲!在疫情的一边十二个单元,这回够了吧自然声发布动铁旗舰耳机NSXmax转眼,离发行自然声上一代动铁旗舰耳机NSX已经三年了。在这三年里,国内耳机界风起云涌,从单单元到多单元又到单单元,各种噱头各种新产品层出不穷(不过,在自己看来,大多只是高价的借口,一对音箱的诞生自然声新的5。5寸两分频NS15音箱(上)终于,自己的第三对音箱,5。5寸的自然声NS15音箱完成了最终的测试,并将于近期完成最后的试听,然后上市发行了。回顾起来,NS15总计做了7版样箱,低音单元更改了三次,高音换了两次音响的玄学反玄学及误区之所见(一)关于水电火电风电核电在音响圈内有无数的玄学,以及一些刚发烧的朋友常见的误区。这个系列文章小编希望和大家一起讨论相关的问题,欢迎大家各抒已见。但不欢迎凭想向或仅凭初高中物理知识就喷不科学的,谢谢!在众多