首页 > 其他分享 >纯虚函数和抽象类

纯虚函数和抽象类

时间:2023-02-18 17:14:50浏览次数:29  
标签:函数 派生类 纯虚 基类 返回值 抽象类

纯虚函数和抽象类

纯虚函数是一种特殊的虚函数,在某些情况下,基类中不能对虚函数给出有意义的实现,把它声明为纯虚函数。

纯虚函数只有函数名、参数和返回值类型,没有函数体,具体实现留给该派生类去做。

语法:

virtual 返回值类型 函数名 (参数列表)=0;

纯虚函数在基类中为派生类保留一个函数的名字,以便派生类它进行重定义。如果在基类中没有保留函数名字,则无法支持多态性。

含有纯虚函数的类被称为抽象类,不能实例化对象,可以创建指针和引用。

派生类必须重定义抽象类中的纯虚函数,否则也属于抽象类。

基类中的纯虚析构函数也需要实现。

标签:函数,派生类,纯虚,基类,返回值,抽象类
From: https://www.cnblogs.com/tgfoven/p/17133050.html

相关文章

  • 过程和函数的作用域
    在单元接口interface部分声明的过程或函数在整个单元内有效。当其他单元(客户单元)引用该单元时,这些过程和函数可以被其他客户单元使用。unitUnitl;//单元首部int......
  • 【Android逆向】frida hook so 函数
    1.apk来自52pojie链接:https://pan.baidu.com/s/1vKC1SevvHfeI7f0d2c6IqQ密码:u1an2.apktool反编译apk,拿到so文件java-jar../apktool_2.2.4.jardapp-debug.apk3.......
  • 调用自定义的SplitString函数对字符串进行分割
    voidSplitString(conststd::string&s,std::vector<std::string>&v,conststd::string&c){ std::string::size_typepos1,pos2; pos2=s.find(c); pos1=0; while......
  • 将指针传递给函数
    将指针传递给函数的能力非常有用,但也很容易掌握。如果我们要编写一个程序,接受一个数字并将其加五,我们可能会编写如下内容:#include<stdio.h>voidAddFive(intNumber)......
  • day04函数
    day04函数概述:函数相当于一个代码空间,这个空间可以存储一些代码片段,一般我们会将一些功能性代码放到函数内,这样的操作是封装,核心是利用函数来减少多余代码,形成复用......
  • C语言填空:利用指针形成逆序字符串函数
    #include<stdio.h>【1】//逆序输出任意字符串voidseverse_string(char【2】str){intlen=strlen(str);char*left=str;char*right=str+le......
  • C语言填空:利用数组形成逆序字符串的函数,不用指针
    #include<stdio.h>【1】//逆序输出任意字符串voidseverse_string(chararr【2】){intlen=strlen(arr);intleft=0;intright=len-1;......
  • str_replace函数详解
    在开发过程中,字符串的操作是很频繁的,这几天有看PHP手册中讲解str_replace函数的讲解,不是很明白,特作如下笔记,以作备忘。     函数原型:mixed str_replace ( mixed $......
  • PHP输出13位时间戳函数
    functiongetUnixTimestamp(){list($s1,$s2)=explode('',microtime());return(float)sprintf('%.0f',(floatval($s1)+floatval($s2))*1000);}......
  • vue中执行异步函数async和await的用法
    在开发中,可能会遇到两个或多个函数异步执行的情况,对于Vue中函数的异步函数执行做了一个小总结,如下:异步执行使用async和await完成created(){this.init()},methods:{......