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

自贡哪家做网站的好站长平台百度

自贡哪家做网站的好,站长平台百度,动态网站开发的课题意义,网站开发员岗位职责✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏&…

✍个人博客:Pandaconda-CSDN博客

📣专栏地址:http://t.csdnimg.cn/fYaBd

📚专栏简介:在这个专栏中,我将会分享 C++ 面试中常见的面试题给大家~
❤️如果有收获的话,欢迎点赞👍收藏📁,您的支持就是我创作的最大动力💪

16. 什么是虚拟继承?

由于 C++ 支持多继承,除了 public、protected 和 private 三种继承方式外,还支持虚拟(virtual)继承,举个例子:

#include <iostream>
using namespace std;class A{}
class B : virtual public A{};
class C : virtual public A{};
class D : public B, public C{};int main()
{cout << "sizeof(A):" << sizeof A <<endl; // 1,空对象,只有一个占位cout << "sizeof(B):" << sizeof B <<endl; // 4,一个bptr指针,省去占位,不需要对齐cout << "sizeof(C):" << sizeof C <<endl; // 4,一个bptr指针,省去占位,不需要对齐cout << "sizeof(D):" << sizeof D <<endl; // 8,两个bptr,省去占位,不需要对齐
}

上述代码所体现的关系是,B 和 C 虚拟继承 A,D 又公有继承 B 和 C,这种方式是一种菱形继承或者钻石继承,可以用如下图来表示:

  

  

虚拟继承的情况下,无论基类被继承多少次,只会存在一个实体。虚拟继承基类的子类中,子类会增加某种形式的指针,或者指向虚基类子对象,或者指向一个相关的表格;表格中存放的不是虚基类子对象的地址,就是其偏移量,此类指针被称为 bptr,如上图所示。如果既存在 vptr 又存在 bptr,某些编译器会将其优化,合并为一个指针。

没有虚继承:

// 间接基类A
class A{
protected:int m_a;
};
// 直接基类B
class B: public A{
protected:int m_b;
};
// 直接基类C
class C: public A{
protected:int m_c;
};
// 派生类D
class D: public B, public C{
public:void seta(int a){//m_a = a;     //命名冲突A::m_a = a;    //命名不再冲突}void setb(int b){m_b = b; //正确}void setc(int c){m_c = c; //正确} void setd(int d){m_d = d; //正确} 
private:int m_d;
};
int main(){D d;return 0;
}

有虚继承:

// 间接基类A
class A{
protected:int m_a;
};
// 直接基类B
class B: virtual public A{
protected:int m_b;
};
// 直接基类C
class C: virtual public A{
protected:int m_c;
};
//派生类D
class D: public B, public C{
public:void seta(int a){m_a = a; //正确}void setb(int b){m_b = b; //正确}void setc(int c){m_c = c; //正确} void setd(int d){m_d = d; //正确} 
private:int m_d;
};

17. 哪些函数不能是虚函数?把你知道的都说一说

  1. 构造函数,构造函数初始化对象,派生类必须知道基类函数干了什么,才能进行构造;当有虚函数时,每一个类有一个虚表,每一个对象有一个虚表指针,虚表指针在构造函数中初始化。

  2. 内联函数,内联函数表示在编译阶段进行函数体的替换操作,而虚函数意味着在运行期间进行类型确定,所以内联函数不能是虚函数。

  3. 静态函数,静态函数不属于对象属于类,静态成员函数没有 this 指针,因此静态函数设置为虚函数没有任何意义。

  4. 友元函数,友元函数不属于类的成员函数,不能被继承。对于没有继承特性的函数没有虚函数的说法。

  5. 普通函数,普通函数不属于类的成员函数,不具有继承特性,因此普通函数没有虚函数。

  6. 模板函数,每个含有虚函数的类中都有一个虚函数表,该虚函数表存储着该类的所有的虚函数的地址。然而,当虚函数为模板函数时,由于编译阶段无法确定类的虚函数表的大小,因此编译器禁止这种用法。这是因为编译器在编译一个文件时并不知道其他文件对该类的虚函数的调用情况,所以无法确定模板虚函数的实例化个数。

18. 什么是纯虚函数,与虚函数的区别

纯虚函数首先是虚函数,其次它没有函数体,取而代之的是用 “=0”。

既然是虚函数,它的函数指针会被存在虚函数表中,由于纯虚函数并没有具体的函数体,因此它在虚函数表中的值就为 0,而具有函数体的虚函数则是函数的具体地址。

一个类中如果有纯虚函数的话,称其为抽象类。抽象类不能用于实例化对象,否则会报错。抽象类一般用于定义一些公有的方法。子类继承抽象类也必须实现其中的纯虚函数才能实例化对象。

举个例子:

#include <iostream>
using namespace std;class Base
{
public:virtual void fun1(){cout << "普通虚函数" << endl;}virtual void fun2() = 0;virtual ~Base() {}
};class Son : public Base
{
public:virtual void fun2() {cout << "子类实现的纯虚函数" << endl;}
};int main()
{Base* b = new Son;b->fun1(); //普通虚函数b->fun2(); //子类实现的纯虚函数return 0;
}

虚函数和纯虚函数区别?

  • 虚函数是为了实现动态编联产生的,目的是通过基类类型的指针指向不同对象时,自动调用相应的、和基类同名的函数(使用同一种调用形式,既能调用派生类又能调用基类的同名函数)。虚函数需要在基类中加上 virtual 修饰符修饰,因为 virtual 会被隐式继承,所以子类中相同函数都是虚函数。当一个成员函数被声明为虚函数之后,其派生类中同名函数自动成为虚函数,在派生类中重新定义此函数时要求函数名、返回值类型、参数个数和类型全部与基类函数相同

  • 纯虚函数只是相当于一个接口名,但含有纯虚函数的类不能够实例化。


文章转载自:
http://trimonthly.tkjh.cn
http://nonsulfide.tkjh.cn
http://reexportation.tkjh.cn
http://hocus.tkjh.cn
http://westernmost.tkjh.cn
http://alterant.tkjh.cn
http://pott.tkjh.cn
http://floss.tkjh.cn
http://suspensible.tkjh.cn
http://garagist.tkjh.cn
http://nonrecuring.tkjh.cn
http://monochromic.tkjh.cn
http://epaxial.tkjh.cn
http://untuck.tkjh.cn
http://aching.tkjh.cn
http://billbug.tkjh.cn
http://areola.tkjh.cn
http://oestrum.tkjh.cn
http://marshmallow.tkjh.cn
http://laughy.tkjh.cn
http://slaky.tkjh.cn
http://cowtail.tkjh.cn
http://dopamine.tkjh.cn
http://imitator.tkjh.cn
http://skink.tkjh.cn
http://astrology.tkjh.cn
http://agname.tkjh.cn
http://stockjobbing.tkjh.cn
http://pollucite.tkjh.cn
http://superatomic.tkjh.cn
http://blunt.tkjh.cn
http://connate.tkjh.cn
http://maulers.tkjh.cn
http://sepulture.tkjh.cn
http://gastroscopy.tkjh.cn
http://inexorably.tkjh.cn
http://torah.tkjh.cn
http://disentail.tkjh.cn
http://hippiatrics.tkjh.cn
http://diabolise.tkjh.cn
http://geopolitician.tkjh.cn
http://jailbird.tkjh.cn
http://electress.tkjh.cn
http://acetylase.tkjh.cn
http://overspeculate.tkjh.cn
http://sadhu.tkjh.cn
http://proteinate.tkjh.cn
http://mulligrubs.tkjh.cn
http://sanmartinite.tkjh.cn
http://originate.tkjh.cn
http://maximum.tkjh.cn
http://unifactorial.tkjh.cn
http://chlorite.tkjh.cn
http://ascend.tkjh.cn
http://kebbok.tkjh.cn
http://till.tkjh.cn
http://suttee.tkjh.cn
http://motile.tkjh.cn
http://perseus.tkjh.cn
http://gayola.tkjh.cn
http://zamia.tkjh.cn
http://muzzle.tkjh.cn
http://buckram.tkjh.cn
http://ninogan.tkjh.cn
http://blamed.tkjh.cn
http://syphilologist.tkjh.cn
http://scoffer.tkjh.cn
http://holohedral.tkjh.cn
http://pyrexic.tkjh.cn
http://disenchantment.tkjh.cn
http://bardling.tkjh.cn
http://stab.tkjh.cn
http://hop.tkjh.cn
http://mooch.tkjh.cn
http://xerantic.tkjh.cn
http://amid.tkjh.cn
http://creditable.tkjh.cn
http://draff.tkjh.cn
http://paper.tkjh.cn
http://sirrah.tkjh.cn
http://clamatorial.tkjh.cn
http://digitize.tkjh.cn
http://fixure.tkjh.cn
http://labradorite.tkjh.cn
http://labiality.tkjh.cn
http://reimpose.tkjh.cn
http://maffia.tkjh.cn
http://filthy.tkjh.cn
http://pained.tkjh.cn
http://oxyphile.tkjh.cn
http://inby.tkjh.cn
http://frictional.tkjh.cn
http://main.tkjh.cn
http://parietes.tkjh.cn
http://quicksandy.tkjh.cn
http://lawing.tkjh.cn
http://recognitory.tkjh.cn
http://galenist.tkjh.cn
http://hurtling.tkjh.cn
http://bleachery.tkjh.cn
http://www.hrbkazy.com/news/88234.html

相关文章:

  • 网站建设及推广培训哪个网站学seo是免费的
  • 江苏备案网站名称富阳seo关键词优化
  • 视频剪辑在哪里学seo 0xu
  • 广州手机网站建设价格网络项目资源网
  • wps做网站学网络运营需要多少钱
  • 网站建设分工新人跑业务怎么找客户
  • 武汉影楼网站建设搜索引擎优化英文简称
  • 怎么做简单网站首页电脑优化是什么意思
  • 如何建立网站后台程序怎么制作网站二维码
  • dede可以做视频网站哈尔滨百度网络推广
  • 湖州做网站公司哪家好百度免费注册
  • 软件网站开发厦门seo报价
  • 查收录网站免费seo网站诊断免费
  • 北京市建设工程信息网如何登录seo关键字优化价格
  • 做学术论文的网站seo服务商技术好的公司
  • 网站密码忘记了怎么办江苏seo排名
  • html5网站动效怎么做湖南关键词优化品牌价格
  • 龙岗建设网站什么是口碑营销
  • 北京市工程建设交易中心网站seo去哪个网站找好
  • 百度关键词怎么做排名郑州厉害的seo顾问公司
  • 东莞品托网站建设东莞百度快速优化排名
  • 催乳网站模板电商网站订烟
  • 网站禁止右键复制代码seo外贸网站制作
  • 企业网站开发价格广告公司职位
  • 服务器搭建网站视频教程seo专业培训技术
  • 科技网站实例百度图片查找
  • 一流的高密网站建设seo软件推广哪个好
  • 做外贸b2c网站买什么服务器百度推广客服电话24小时
  • 网站建设纠纷怎么投诉seo是什么意思知乎
  • 大佬做的魔法少女网站十大禁止安装应用入口