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

开发企业网站多少钱怎么建立一个网站?

开发企业网站多少钱,怎么建立一个网站?,宜良县建设局网站,网站详情页虚函数表#xff08;通常简称为 vtable#xff09;是 C 用于实现多态行为的一种机制。当一个类定义了虚函数或者继承了虚函数#xff0c;编译器会为该类生成一个虚函数表。下面详细介绍虚函数表及其工作原理#xff1a; 1. 什么是虚函数表#xff1f; 虚函数表是一个存放…虚函数表通常简称为 vtable是 C 用于实现多态行为的一种机制。当一个类定义了虚函数或者继承了虚函数编译器会为该类生成一个虚函数表。下面详细介绍虚函数表及其工作原理 1. 什么是虚函数表 虚函数表是一个存放指向虚函数的指针数组。每一个有虚函数的类或者从有虚函数的类继承而来的类都有一个相关联的虚函数表。 2. 对象与虚函数表 每个有虚函数的对象都包含一个指向其类的虚函数表的指针。这个指针通常被称为 vptr。 3. 如何工作 当调用一个对象的虚函数时编译器使用对象的 vptr 来定位类的虚函数表。接着从虚函数表中找到相应的虚函数指针并调用该函数。这个过程是在运行时进行的因此可以实现多态行为。 4. 继承和虚函数表 当一个类继承自另一个有虚函数的类并且没有重写任何虚函数该类的对象将使用父类的虚函数表。 当派生类重写了基类的虚函数派生类的虚函数表中该函数的入口会被更新为指向派生类版本的函数。 如果派生类添加了新的虚函数它们会被添加到虚函数表的末尾。 5. 为什么需要虚函数表 C 使用虚函数表来支持动态多态允许在基类指针或引用上调用适当的派生类函数而不仅仅是基类定义的函数。 6. 性能考虑 虚函数调用通常比非虚函数调用稍慢因为需要额外的间接跳转。然而这种开销在绝大多数应用中都是可以接受的。 虚函数还增加了对象的大小因为每个对象需要一个 vptr以及类的大小因为需要存储虚函数表。 7. 示例 #include iostreamclass Base { public:virtual void foo() { std::cout Base::foo() std::endl; } };class Derived : public Base { public:void foo() override { std::cout Derived::foo() std::endl; } };int main() {Base* obj new Derived();obj-foo(); // 输出 Derived::foo()delete obj;return 0; }在这个示例中当我们通过基类指针 obj 调用 foo 函数时实际调用的是 Derived 类中的版本。这是因为虚函数表机制找到了 Derived 类版本的 foo 函数并执行了它。 总的来说虚函数表是 C 实现动态多态的基石它允许我们在基类指针或引用上调用适当的派生类方法。
http://www.zqtcl.cn/news/910369/

相关文章:

  • 专业网站建设加盟合作怀化seo快速排名
  • 房山区网站建设wordpress自动采集翻译插件怎么用
  • 郴州做网站 郴网互联网站制作公司起名
  • 织梦做的的网站首页显示空白查企业营业执照的网站
  • 葫芦岛公司做网站外贸西班牙语网站建设
  • 广西住房和城乡建设厅培训中心网站首页wordpress建导航
  • 企业建立网站需要提供什么建立网站需要多长钱
  • 科技企业网站源码下载网页设计公司哪家效果好
  • 成都龙泉工程建设有限公司网站网络科技有限公司网站建设策划书
  • 温州网站建设对比赣州招聘网最新招聘
  • 网站建设什么时候好商丘创小资网络有限公司
  • 做网站不切片可以吗wordpress导入表单
  • 广告公司的网站建设价格wordpress简洁淘宝客免费主题
  • 内蒙古建设安全监督站的网站做网站排名多少钱
  • 自学网站平面设计友链大全
  • go语言做的网站哪个公司搭建网站
  • 网站地图抓取正邦设计创始人
  • 济南建网站公司佛山做营销型网站建设
  • 网站总体策划的内容有哪些做网站排名seo
  • 网站备案上传照片几寸上海网站排名提升
  • 重庆cms建站系统丰都网站建设联系电话
  • 网络教学平台昆明理工大学优化大师的功能有哪些
  • 个人主题网站做的步骤一流的网站建设
  • 公司网站建设规划国外搜索关键词的网站
  • 石家庄网站快速优化排名国内做性视频网站有哪些
  • 易居做网站网页设计的发展
  • 开一个网站建设公司好产品销售型的网站
  • 苍梧县网站建设南京网站建设 雷仁网络
  • 四川网站制作成都wordpress 移动支付
  • 山西网站开发二次开发做自媒体可以参考的外国网站