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

做网站一般长宽多少钱公司网站宣传自己做的灯展

做网站一般长宽多少钱,公司网站宣传自己做的灯展,贵阳软件开发公司排名,微信投票网站制作虚拟函数和普通函数的区别主要在于它们的调用方式。当一个类中有虚拟函数时#xff0c;编译器会为该类创建一个虚函数表#xff08;vtable#xff09;#xff0c;这个表中存储了该类中所有虚拟函数的地址。在运行时#xff0c;通过基类的指针或引用调用派生类中的函数时编译器会为该类创建一个虚函数表vtable这个表中存储了该类中所有虚拟函数的地址。在运行时通过基类的指针或引用调用派生类中的函数时会首先查找虚函数表来确定应该调用哪个函数这就是动态绑定或晚期绑定的过程。而普通函数则是静态绑定的即在编译时就确定了调用的函数。 因此虚拟函数主要用于实现多态性允许在基类中定义接口并在派生类中实现具体的行为。而普通函数则没有这种特性它们只是普通的成员函数被直接调用。 关于内联函数和构造函数能否成为虚拟函数的问题 内联函数不能是虚拟函数内联函数的主要目的是为了提高执行效率它会在编译时将函数调用替换为函数体本身从而消除函数调用的开销。而虚拟函数的调用涉及到运行时查找虚函数表的过程这与内联函数的优化目标是相悖的。因此C标准规定内联函数不能是虚拟函数。构造函数不能是虚拟函数构造函数的主要任务是在对象创建时初始化对象的成员变量。由于对象尚未完全构造完成时虚函数表可能还未完全准备好因此无法正确调用虚函数。此外构造函数总是与特定的类关联不存在多态性的问题因此没有必要将其设为虚拟函数。 总的来说虚拟函数主要用于实现多态性而内联函数和构造函数都有其特定的用途和限制不能成为虚拟函数。 以下是一个简单的C示例用于说明虚拟函数和普通函数之间的区别 首先我们定义一个基类Animal它有一个普通函数eat和一个虚拟函数makeSound class Animal { public: // 普通函数 void eat() { std::cout Animal eats std::endl; } // 虚拟函数 virtual void makeSound() { std::cout Animal makes a sound std::endl; } }; 然后我们定义一个派生类Dog它继承自Animal并重写了虚拟函数makeSound class Dog : public Animal { public: // 重写虚拟函数 void makeSound() override { std::cout Dog barks std::endl; } }; 现在我们创建一个Animal的指针并让它指向一个Dog对象 int main() { Animal* animalPtr new Dog(); // 创建一个Dog对象但使用Animal类型的指针指向它 // 调用普通函数 animalPtr-eat(); // 输出 Animal eats因为eat是普通函数调用的是指针类型Animal的eat函数 // 调用虚拟函数 animalPtr-makeSound(); // 输出 Dog barks因为makeSound是虚拟函数调用的是实际对象类型Dog的makeSound函数 delete animalPtr; // 不要忘记释放动态分配的内存 return 0; } 在这个例子中我们可以看到 当调用普通函数eat时不论animalPtr实际指向什么类型的对象都会调用Animal类中的eat函数这是静态绑定的结果。当调用虚拟函数makeSound时会根据animalPtr实际指向的对象类型在这里是Dog来调用相应的makeSound函数这是动态绑定的结果。因此即使我们使用Animal类型的指针makeSound函数仍然能够表现出Dog类的行为实现了多态性。
http://www.pierceye.com/news/355164/

相关文章:

  • 开发一个小程序对网站做综合搜索引擎优化分析
  • 网站开发自学网有哪些企业可以做招聘的网站有哪些
  • 网站怎么做百度推广网站开发者模式
  • 学校网站设计制作目的做网站推广方法
  • wordpress建站云平台小程序商城开发平台
  • pc网站转换成微网站网站建设开发哪家质量好
  • wordpress网站使用教程aspnet东莞网站建设多少钱
  • 网站地图提交给百度证券公司如何拉客户
  • 做外贸有哪些免费的网站win7优化大师好不好
  • 网站功能怎么写上海网站制作建设怎么样
  • 网站域名是网站架构吗成都网站搭建优化推广
  • 自己做的网站添加交费功能合肥有什么好的网站建设公司好
  • 做网站品牌龙岩新增病例行动轨迹
  • 任家房网站建设郑州百度网站推广
  • 深圳建设网站的公司简介WordPress多功能投稿
  • 简述织梦网站上传及安怎样在网站上做免费的推广
  • 关于信用体系建设的网站wordpress新闻类模板下载
  • 免费行情软件网站下载大全爱学校vi设计案例
  • 网站外包优化怎样做免费抽皮肤的网站
  • 东八区网站建设网站源码在哪里
  • 重点建设专业 专题网站搜狗官方网站
  • 微信营销工具有哪些使用最佳搜索引擎优化工具
  • 网站推广意识薄弱wordpress授权协议
  • 用php做高中数学题库网站阿里网站建设教程
  • 大兴网站建设公司电话东莞企业网站制作怎么做
  • 网站维护有啥用2021跨境电商最火的产品
  • 专业的东莞网站排名wordpress 客户端使用
  • 做网站需要什么人才网站建设与规划案例
  • 你学做网站学了多久建设网站困难的解决办法
  • 东莞如何搭建网站建设做招聘信息的网站