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

建设主管部门网站查询西安专业网站建设服务

建设主管部门网站查询,西安专业网站建设服务,怎么提升网站收录,建设网站的网站叫什么纯虚函数语法#xff1a;virtual 返回值类型 函数名(参数列表) 0纯虚函数的作用#xff1a;不用定义#xff01;在多态中#xff0c;通常父类中虚函数的实现是无意义的#xff08;因为主要用子类重写的#xff0c;父类只是为了派生子类当做一个类族的顶层出现#xff0…纯虚函数语法 virtual 返回值类型 函数名(参数列表) 0纯虚函数的作用不用定义 在多态中通常父类中虚函数的实现是无意义的因为主要用子类重写的父类只是为了派生子类当做一个类族的顶层出现所以可以将虚函数改为纯虚函数。 抽象类有纯虚函数的类叫做抽象类 纯虚函数的特点无法实例化对象子类必须重写抽象类中的纯虚函数否则子类也属于纯虚函数参考上一条抽象类 不能定义对象但是可以定义抽象类的指针或者引用。用抽象类指针创建子类对象class Shape { public:virtual void Area() 0; virtual void Perimeter() 0; }; class Triangle :public Shape { public:void Area() { cout T area endl; }void Perimeter() { cout T per endl; }Triangle(int l) :m_long(l) {} private:int m_long; }; class Circle :public Shape { public:virtual void Area() { cout Ci area endl; }virtual void Perimeter() { cout Ci per endl; }Circle(int r) :m_r(r) {} private:int m_r; }; class Rectangle :public Shape { public:virtual void Area() { cout Re area endl; }virtual void Perimeter() { cout Re per endl; }Rectangle(int l, int w) :m_length(l), m_width(w) {} private:int m_length;int m_width; }; void test(Shape sh) {sh.Area();sh.Perimeter(); } int main11() {//使用抽象类指针创建其子类Shape* p[3];// { new Rectangle(3,5),new Circle(5),new Triangle(6) };//Shape sh;//err不允许使用抽象类类型int i;p[0] new Rectangle(2, 4);p[1] new Circle(5);p[2] new Triangle(6);for (i 0; i 3; i){p[i]-Area();p[i]-Perimeter();delete p[i];p[i] NULL;}return 0; }虚析构和纯虚析构使用多态时如果子类中有属性开辟到堆区那么父类指针在释放时无法调用到子类的析构代码此时需要将父类中的析构函数改为虚析构或者纯虚析构。作用虚析构和纯虚析构都是用来解决通过父类指针释放子类对象如果子类没有堆区数据可以不写纯虚析构或虚析构有纯虚析构的类也属于抽象类class Animal { public:Animal() { cout Animal构造 endl; }~Animal(){ cout Animal析构 endl; }//纯虚析构_纯虚需要声明也需要定义代码实现//virtual ~Animal() 0;virtual void speak() 0; }; //Animal:: ~Animal(){ cout Animal纯虚析构 endl; }//在外面定义 class Cat :public Animal { public:Cat(string name){cout Cat构造 endl;m_Name new string(name);//子类成员在堆区开辟空间}virtual void speak(){cout *m_Name cat speak endl;}~Cat(){cout Cat析构 endl;if (m_Name ! NULL)delete m_Name;m_Name NULL;}string* m_Name; }; int main() {Animal* an new Cat(Mimi);an-speak();//cat speakdelete an;//父类指针析构时不调用子类中的析构可能发生内存泄漏//父类析构函数不是虚析构时如果释放指向子类的父类指针只会调用父类的析构函数//在父类析构函数前面加上virtual关键字就可以解决这个问题 }不用虚析构的结果无法调用子类的析构。在父类析构前加上虚关键字就可以
http://www.eeditor.cn/news/120927/

相关文章:

  • 师德师风建设好的小学网站请人做网站域名和主机
  • 东莞凤岗网站建设制作国际会议网站建设
  • 专业建材网站建设网站改关键词
  • 电子商务网站建设课程的心得如何做阿里巴巴网站
  • 178网站建设搞笑网站源代码
  • 电子商务网站建设题6优质做网站费用
  • 威海网站定制广州市公司网站建设报价
  • 专门做汽车gps贷款网站广州市建设工程价格信息
  • 做网站通过什么挣钱二维码生成器在线制作免费
  • 北京欢迎你网站制作公司深圳福田地址随便来一个
  • 湘潭市哪里做网站涿州注册公司流程和费用
  • 网站开发入帐分录阳西县网络问政平台公众号
  • 公司年前做网站好处深圳外包软件开发
  • 数据交易网站开发网站鼠标特效
  • 网站是不是每年都要续费代加工厂找订单的网站
  • 特效型网站网站导航设置
  • 用oracle做网站数据库五合一网站建设
  • 网站开发html php怎么做农产品垂直网站
  • 百度不收录你的网站产品漳州网站建设求职简历
  • 成都网站建设 工作室wordpress 仿小米
  • 里水哪里做有做网站制作社交app软件要多少钱
  • 网站开发案例php360网站推广官网软件
  • 商城网站怎么做seo六安网络科技股份有限公司
  • 网站内链怎么做更好湛江高端网站开发
  • 营销型网站文案怎么做购买域名
  • 响应式网站尺寸节点匠人精神网站建设
  • qq选号网站怎么做的重庆建设监理协会网站
  • 做的网站怎么查看点击率做外贸网站那家专业
  • 城乡建设部网站首页住房和城乡建设部网站第九批
  • 启东住房和城乡建设局网站互联网网站设计